package com.yejing.httpdemo;

import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.apache.http.HttpEntity;
import org.apache.http.NameValuePair;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.InputStream;
import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Test {

    public static void main(String[] args) throws Exception {


//        testGet();

//        testPostForm();

//        testPostForm2();

//        testPostJson();
        testJsonToBytes();
    }

    public static void testGet() throws Exception {

        //        1. 创建HttpClient对象。
//
//        2. 创建请求方法的实例，并指定请求URL。如果需要发送GET请求，创建HttpGet对象；如果需要发送POST请求，创建HttpPost对象。
//
//        3. 如果需要发送请求参数，可调用HttpGet、HttpPost共同的setParams(HetpParams params)方法来添加请求参数；
//        对于HttpPost对象而言，也可调用setEntity(HttpEntity entity)方法来设置请求参数。
//
//        4. 调用HttpClient对象的execute(HttpUriRequest request)发送请求，该方法返回一个HttpResponse。
//
//        5. 调用HttpResponse的getAllHeaders()、getHeaders(String name)等方法可获取服务器的响应头；
//        调用HttpResponse的getEntity()方法可获取HttpEntity对象，该对象包装了服务器的响应内容。
//        程序可通过该对象获取服务器的响应内容。
//
//        6. 释放连接。无论执行方法是否成功，都必须释放连接

        String url = "http://localhost:8080/home/login";
        //创建httpClient实例
        CloseableHttpClient client = HttpClients.createDefault();
        //创建一个uri对象
        URIBuilder uriBuilder = new URIBuilder(url);
        //塞入form参数
        uriBuilder.addParameter("account", "123");
        uriBuilder.addParameter("password", "123");
        //创建httpGet远程连接实例,这里传入目标的网络地址
        HttpGet httpGet = new HttpGet(uriBuilder.build());
        // 设置请求头信息，鉴权(没有可忽略)
        httpGet.setHeader("Authorization", "Bearer da3efcbf-0845-4fe3-8aba-ee040be542c0");
        // 设置配置请求参数(没有可忽略)
        RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 连接主机服务超时时间
                .setConnectionRequestTimeout(35000)// 请求超时时间
                .setSocketTimeout(60000)// 数据读取超时时间
                .build();
        // 为httpGet实例设置配置
        httpGet.setConfig(requestConfig);
        //执行请求
        CloseableHttpResponse response = client.execute(httpGet);
        //获取Response状态码
        int statusCode = response.getStatusLine().getStatusCode();
        System.out.println(statusCode);
        //获取响应实体, 响应内容
        HttpEntity entity = response.getEntity();
        //通过EntityUtils中的toString方法将结果转换为字符串
        String str = EntityUtils.toString(entity);
        System.out.println(str);
        response.close();
        client.close();
    }


    public static void testPostForm() throws Exception {
        String url = "http://localhost:8080/home/postForm";
        //创建httpClient实例
        CloseableHttpClient client = HttpClients.createDefault();
        //创建一个uri对象
        URIBuilder uriBuilder = new URIBuilder(url);
        //塞入form参数,这种做法相当于，testPostForm2中的使用BasicNameValuePair
        uriBuilder.addParameter("account", "123");
        uriBuilder.addParameter("password", "123");
        //创建httpGet远程连接实例,这里传入目标的网络地址
//        HttpGet httpGet = new HttpGet(uriBuilder.build());
        HttpPost httpPost = new HttpPost(uriBuilder.build());
        // 设置配置请求参数(没有可忽略)
        RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 连接主机服务超时时间
                .setConnectionRequestTimeout(35000)// 请求超时时间
                .setSocketTimeout(60000)// 数据读取超时时间
                .build();
        // 为httpGet实例设置配置
        httpPost.setConfig(requestConfig);
        //执行请求
        CloseableHttpResponse response = client.execute(httpPost);
        //获取Response状态码
        int statusCode = response.getStatusLine().getStatusCode();
        System.out.println(statusCode);
        //获取响应实体, 响应内容
        HttpEntity entity = response.getEntity();
        //通过EntityUtils中的toString方法将结果转换为字符串
        String str = EntityUtils.toString(entity);
        System.out.println(str);
        response.close();
        client.close();

    }

    /**
     * form的关键在于生成NameValuePair ,这个集合里面放入form 表单的元素.
     * <p>
     * 随后使用 HttpPost 的 setEntity(new UrlEncodedFormEntity(nameValuePair, HTTP.UTF_8)) 方法塞入生成的form元素集合.
     * <p>
     * 总得来说, 就是通过一个NameValuePair集合来存放待提交的参数,并将这个参数集合传入到一个UrlEncodedFormEntity中,然后调用HttpPost的setEntity()方法将构建好的UrlEncodedFormEntity传入. 代码如下:
     * <p>
     * List<NameValuePair>params=newArrayList<NameValuePair>();
     * <p>
     * Params.add(new BasicNameValuePair(“username”,”admin”));
     * <p>
     * Params.add(new BasicNameValuePair(“password”,”123456”));
     * <p>
     * UrlEncodedFormEntity entity=newUrlEncodedFormEntity(params,”utf-8”);
     * <p>
     * httpPost.setEntity(entity);
     *
     * @throws Exception
     */
    public static void testPostForm2() throws Exception {

        String url = "http://localhost:8080/home/postForm";
        //创建httpClient实例
        CloseableHttpClient client = HttpClients.createDefault();
        HttpPost httpPost = new HttpPost(url);

        List<NameValuePair> params = new ArrayList<NameValuePair>();
        params.add(new BasicNameValuePair("account", "yejing"));
        params.add(new BasicNameValuePair("password", "123456"));
        UrlEncodedFormEntity paramEntity = new UrlEncodedFormEntity(params, "utf-8");
        httpPost.setEntity(paramEntity);

        // 设置配置请求参数(没有可忽略)
        RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 连接主机服务超时时间
                .setConnectionRequestTimeout(35000)// 请求超时时间
                .setSocketTimeout(60000)// 数据读取超时时间
                .build();
        // 为httpGet实例设置配置
        httpPost.setConfig(requestConfig);

        // 设置表头
        httpPost.setHeader("Content-Type", "application/x-www-form-urlencoded");
        //执行请求
        CloseableHttpResponse response = client.execute(httpPost);
        //获取Response状态码
        int statusCode = response.getStatusLine().getStatusCode();
        System.out.println(statusCode);
        //获取响应实体, 响应内容
        HttpEntity entity = response.getEntity();
        //通过EntityUtils中的toString方法将结果转换为字符串
        String str = EntityUtils.toString(entity);
        System.out.println(str);
        response.close();
        client.close();
    }


    public static void testPostJson() throws Exception {
        String url = "http://localhost:8080/home/postjson";
        //创建httpClient实例
        CloseableHttpClient client = HttpClients.createDefault();

        //创建httpGet远程连接实例,这里传入目标的网络地址
        HttpPost httpPost = new HttpPost(url);
        // 设置配置请求参数(没有可忽略)
        RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(35000)// 连接主机服务超时时间
                .setConnectionRequestTimeout(35000)// 请求超时时间
                .setSocketTimeout(60000)// 数据读取超时时间
                .build();
        // 为httpGet实例设置配置
        httpPost.setConfig(requestConfig);

        Map<String, String> map = new HashMap<>();
        map.put("account", "yejing");
        map.put("password", "123456");

        HttpEntity paramsEntity = new StringEntity(map.toString());
        httpPost.setEntity(paramsEntity);
        httpPost.setHeader("Content-type", "application/json");
        //执行请求
        CloseableHttpResponse response = client.execute(httpPost);
        //获取Response状态码
        int statusCode = response.getStatusLine().getStatusCode();
        System.out.println(statusCode);
        //获取响应实体, 响应内容
        HttpEntity entity = response.getEntity();
        //通过EntityUtils中的toString方法将结果转换为字符串
        String str = EntityUtils.toString(entity);
        System.out.println(str);
        response.close();
        client.close();

    }

    public static void testJsonToBytes2(){
        String str = "{\"ReportName\":\"111111\",\"ReportInfo\":[208,207,17,224,161,177,26,225,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,3,0,254,255,9,0,6,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,0,0,0,0,0,0,0,0,16,0,0,254,255,255,255,0,0,0,0,254,255,255,255,0,0,0,0,37,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,9,8,16,0,0,6,5,0,23,25,205,7,201,192,0,0,6,4,0,0,66,0,2,0,176,4,61,1,2,0,1,0,61,0,18,0,240,0,120,0,92,58,9,36,56,0,0,0,0,0,1,0,88,2,64,0,2,0,0,0,141,0,2,0,0,0,34,0,2,0,0,0,14,0,2,0,1,0,183,1,2,0,0,0,218,0,2,0,0,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,24,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,4,1,174,95,111,143,197,150,209,158,49,0,24,0,184,1,0,0,255,127,144,1,0,0,0,2,0,0,4,1,174,95,111,143,197,150,209,158,49,0,24,0,184,1,0,0,10,0,144,1,0,0,0,2,0,0,4,1,174,95,111,143,197,150,209,158,224,0,20,0,0,0,0,0,245,255,16,0,0,0,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,0,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,9,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,44,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,42,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,43,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,41,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,6,0,0,0,1,0,16,0,0,8,0,0,0,0,0,0,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,8,0,0,0,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,8,0,0,0,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,16,0,0,6,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,1,0,12,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,17,0,12,6,0,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,16,0,0,0,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,16,16,128,31,128,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,17,0,63,6,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,17,16,191,31,128,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,1,0,63,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,1,16,63,0,128,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,16,17,128,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,17,17,191,31,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,40,0,1,0,0,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,1,17,63,0,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,40,1,1,63,0,63,0,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,40,17,17,191,31,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,40,1,17,63,0,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,0,1,0,0,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,16,17,128,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,1,1,63,0,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,17,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,16,1,128,31,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,17,1,191,31,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,1,1,63,0,63,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,18,0,0,56,18,18,191,31,191,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,17,18,191,31,191,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,18,0,0,56,33,18,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,18,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,33,17,191,31,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,18,0,0,56,33,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,18,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,18,33,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,17,33,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,33,33,191,31,191,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,18,0,0,56,17,18,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,18,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,17,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,33,17,191,31,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,18,0,0,56,17,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,17,33,191,31,191,31,0,2,192,32,147,2,4,0,0,128,0,255,147,2,4,0,16,128,5,255,147,2,4,0,17,128,4,255,147,2,4,0,18,128,7,255,147,2,4,0,19,128,3,255,147,2,4,0,20,128,6,255,146,0,226,0,56,0,0,0,0,0,255,255,255,0,255,0,0,0,0,255,0,0,0,0,255,0,255,255,0,0,255,0,255,0,0,255,255,0,128,0,0,0,0,128,0,0,0,0,128,0,128,128,0,0,128,0,128,0,0,128,128,0,192,192,192,0,128,128,128,0,153,153,255,0,153,51,102,0,255,255,204,0,204,255,255,0,102,0,102,0,255,128,128,0,0,102,204,0,204,204,255,0,0,0,128,0,255,0,255,0,255,255,0,0,0,255,255,0,128,0,128,0,128,0,0,0,0,128,128,0,0,0,255,0,0,204,255,0,204,255,255,0,204,255,204,0,255,255,153,0,153,204,255,0,255,153,204,0,204,153,255,0,255,204,153,0,51,102,255,0,51,204,204,0,153,204,0,0,255,204,0,0,255,153,0,0,255,102,0,0,102,102,153,0,150,150,150,0,0,51,102,0,51,153,102,0,0,51,0,0,51,51,0,0,153,51,0,0,153,51,102,0,51,51,153,0,51,51,51,0,133,0,18,0,141,17,0,0,0,0,10,0,82,101,115,117,108,116,68,97,116,97,140,0,4,0,1,0,1,0,174,1,4,0,1,0,1,4,23,0,8,0,1,0,0,0,0,0,0,0,193,1,8,0,193,1,0,0,34,190,1,0,235,0,90,0,15,0,0,240,82,0,0,0,0,0,6,240,24,0,0,0,1,4,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,51,0,11,240,18,0,0,0,191,0,8,0,8,0,129,1,9,0,0,8,192,1,64,0,0,8,64,0,30,241,16,0,0,0,13,0,0,8,12,0,0,8,23,0,0,8,247,0,0,16,252,0,235,7,1,3,0,0,146,0,0,0,8,0,1,142,127,132,118,122,122,3,140,75,109,213,139,165,98,74,84,4,0,1,121,152,238,118,227,78,247,83,1,0,0,47,4,0,1,213,139,140,154,22,127,247,83,4,0,1,55,104,58,103,22,127,247,83,2,0,0,49,35,4,0,1,135,101,246,78,22,127,247,83,4,0,1,121,152,238,118,13,84,240,121,6,0,0,49,49,49,49,49,49,4,0,1,213,139,140,154,157,79,110,99,4,0,1,55,104,58,103,225,79,111,96,4,0,1,122,122,3,140,139,87,247,83,1,0,0,49,4,0,1,75,109,213,139,246,101,244,149,16,0,0,50,48,50,51,47,48,53,47,50,54,32,49,53,58,52,54,5,0,1,139,83,41,127,58,103,139,87,247,83,3,0,1,212,89,88,98,185,101,7,0,1,158,91,140,154,77,82,55,104,58,103,182,114,1,96,2,0,1,140,91,125,89,4,0,1,146,99,122,122,185,101,15,95,6,0,1,164,91,133,81,58,103,97,103,98,95,1,120,4,0,1,75,109,213,139,238,118,132,118,4,0,1,75,109,213,139,246,101,127,149,8,0,0,48,48,58,48,48,58,48,48,4,0,1,75,109,213,139,186,78,88,84,3,0,1,161,91,56,104,186,78,7,0,1,213,139,140,154,14,84,55,104,58,103,182,114,1,96,6,0,1,98,96,13,89,159,83,58,103,182,114,1,96,7,0,1,222,143,165,99,161,123,127,149,40,0,115,124,41,0,6,0,1,164,91,22,89,58,103,97,103,98,95,1,120,2,0,1,7,89,232,108,4,0,1,190,139,7,89,225,79,111,96,5,0,1,158,91,140,154,164,91,13,84,240,121,12,0,1,83,0,45,0,89,0,45,0,50,0,48,0,80,0,229,93,181,81,49,0,45,0,49,0,4,0,1,190,139,7,89,22,127,247,83,17,0,0,65,50,50,49,49,48,49,48,48,48,49,50,49,48,48,48,49,5,0,1,190,139,7,89,9,103,72,101,31,103,10,0,0,50,48,50,50,47,48,54,47,48,51,4,0,1,190,139,154,91,229,93,181,81,9,0,1,164,91,133,81,114,94,3,116,41,110,166,94,40,0,3,33,41,0,9,0,1,164,91,133,81,127,110,3,116,41,110,166,94,40,0,3,33,41,0,9,0,1,164,91,22,89,114,94,3,116,41,110,166,94,40,0,3,33,41,0,14,0,1,164,91,22,89,127,110,3,116,41,110,166,94,47,0,127,110,166,94,40,0,3,33,47,0,37,0,41,0,2,0,0,50,55,2,0,0,49,57,2,0,0,51,53,11,0,0,50,52,47,51,57,46,55,50,48,53,50,5,0,1,171,136,75,109,58,103,53,117,139,83,9,0,1,171,136,75,109,58,103,145,152,135,115,40,0,72,0,122,0,41,0,4,0,0,50,50,48,86,4,0,0,53,48,72,122,4,0,1,158,91,69,150,229,93,181,81,6,0,1,55,104,58,103,208,143,76,136,182,114,1,96,4,0,1,208,143,76,136,33,106,15,95,2,0,1,206,152,31,144,3,0,1,1,144,206,152,227,83,5,0,1,52,108,115,94,252,91,206,152,97,103,5,0,1,130,87,244,118,252,91,206,152,97,103,4,0,1,211,126,156,103,36,82,154,91,2,0,1,121,152,238,118,4,0,1,26,144,83,144,13,84,240,121,2,0,1,85,83,77,79,1,0,0,50,1,0,0,51,1,0,0,52,1,0,0,53,1,0,0,54,1,0,0,55,3,0,1,115,94,71,87,60,80,7,0,1,164,91,133,81,167,79,114,94,3,116,41,110,166,94,12,0,0,73,46,68,46,73,110,108,101,116,32,68,66,1,0,1,3,33,3,0,0,78,97,78,7,0,1,164,91,133,81,167,79,127,110,3,116,41,110,166,94,12,0,0,73,46,68,46,73,110,108,101,116,32,87,66,7,0,1,164,91,22,89,167,79,114,94,3,116,41,110,166,94,12,0,0,79,46,68,46,73,110,108,101,116,32,68,66,7,0,1,164,91,22,89,167,79,127,110,3,116,41,110,166,94,12,0,0,79,46,68,46,73,110,108,101,116,32,87,66,11,0,1,164,91,133,81,167,79,114,94,3,116,41,110,166,94,95,0,147,143,250,81,207,145,19,0,0,73,46,68,46,73,110,108,101,116,32,68,66,32,79,117,116,112,117,116,1,0,0,37,11,0,1,164,91,133,81,167,79,127,110,3,116,41,110,166,94,95,0,147,143,250,81,207,145,19,0,0,73,46,68,46,73,110,108,101,116,32,87,66,32,79,117,116,112,117,116,11,0,1,164,91,22,89,167,79,114,94,3,116,41,110,166,94,95,0,147,143,250,81,207,145,19,0,0,79,46,68,46,73,110,108,101,116,32,68,66,32,79,117,116,112,117,116,11,0,1,164,91,22,89,167,79,127,110,3,116,41,110,166,94,95,0,147,143,250,81,207,145,19,0,0,79,46,68,46,73,110,108,101,116,32,87,66,32,79,117,116,112,117,116,11,0,1,164,91,133,81,167,79,214,83,55,104,206,152,58,103,95,0,147,143,250,81,207,145,23,0,0,73,46,68,46,83,97,109,112,108,105,110,103,32,102,97,110,32,79,117,116,112,117,116,11,0,1,164,91,22,89,167,79,214,83,55,104,206,152,58,103,95,0,147,143,250,81,207,145,23,0,0,79,46,68,46,83,97,109,112,108,105,110,103,32,102,97,110,32,79,117,116,112,117,116,6,0,1,251,124,223,126,139,83,155,82,49,0,50,0,17,0,0,83,121,115,116,101,109,32,112,114,101,115,115,117,114,101,49,50,3,0,0,77,80,97,8,0,1,164,91,133,81,167,79,49,0,237,112,53,117,118,80,49,0,7,0,0,73,78,49,95,84,67,49,8,0,1,164,91,133,81,167,79,49,0,237,112,53,117,118,80,50,0,7,0,0,73,78,49,95,84,67,50,8,0,1,164,91,133,81,167,79,50,0,237,112,53,117,118,80,49,0,7,0,0,73,78,50,95,84,67,49,8,0,1,164,91,133,81,167,79,50,0,237,112,53,117,118,80,50,0,7,0,0,73,78,50,95,84,67,50,8,0,1,164,91,133,81,167,79,51,0,237,112,53,117,118,80,49,0,7,0,0,73,78,51,95,84,67,49,8,0,1,164,91,133,81,167,79,51,0,237,112,53,117,118,80,50,0,7,0,0,73,78,51,95,84,67,50,8,0,1,164,91,133,81,167,79,52,0,237,112,53,117,118,80,49,0,7,0,0,73,78,52,95,84,67,49,8,0,1,164,91,133,81,167,79,52,0,237,112,53,117,118,80,50,0,7,0,0,73,78,52,95,84,67,50,8,0,1,164,91,133,81,167,79,53,0,237,112,53,117,118,80,49,0,7,0,0,73,78,53,95,84,67,49,8,0,1,164,91,133,81,167,79,53,0,237,112,53,117,118,80,50,0,7,0,0,73,78,53,95,84,67,50,8,0,1,164,91,133,81,167,79,54,0,237,112,53,117,118,80,49,0,7,0,0,73,78,54,95,84,67,49,8,0,1,164,91,133,81,167,79,54,0,237,112,53,117,118,80,50,0,7,0,0,73,78,54,95,84,67,50,8,0,1,164,91,22,89,167,79,49,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,49,95,84,67,49,8,0,1,164,91,22,89,167,79,49,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,49,95,84,67,50,8,0,1,164,91,22,89,167,79,50,0,237,112,53,117,118,80,49,0,9,0,0,79,85,84,50,95,84,67,49,49,8,0,1,164,91,22,89,167,79,50,0,237,112,53,117,118,80,50,0,9,0,0,79,85,84,50,95,84,67,49,50,8,0,1,164,91,22,89,167,79,51,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,51,95,84,67,49,8,0,1,164,91,22,89,167,79,51,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,51,95,84,67,50,8,0,1,164,91,22,89,167,79,52,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,52,95,84,67,49,8,0,1,164,91,22,89,167,79,52,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,52,95,84,67,50,8,0,1,164,91,22,89,167,79,53,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,53,95,84,67,49,8,0,1,164,91,22,89,167,79,53,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,53,95,84,67,50,8,0,1,164,91,22,89,167,79,54,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,54,95,84,67,49,8,0,1,164,91,22,89,167,79,54,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,54,95,84,67,50,6,0,1,75,109,213,139,0,78,11,78,13,84,87,91,9,0,0,79,85,84,54,95,84,67,53,48,6,0,1,2,95,56,94,176,115,97,140,207,99,240,143,255,0,154,0,8,0,244,8,0,0,12,0,0,0,71,9,0,0,95,0,0,0,160,9,0,0,184,0,0,0,252,9,0,0,20,1,0,0,98,10,0,0,122,1,0,0,227,10,0,0,251,1,0,0,86,11,0,0,110,2,0,0,174,11,0,0,198,2,0,0,244,11,0,0,12,3,0,0,50,12,0,0,74,3,0,0,177,12,0,0,201,3,0,0,88,13,0,0,112,4,0,0,250,13,0,0,18,5,0,0,110,14,0,0,134,5,0,0,226,14,0,0,250,5,0,0,86,15,0,0,110,6,0,0,208,15,0,0,232,6,0,0,72,16,0,0,96,7,0,0,188,16,0,0,212,7,0,0,140,8,16,0,140,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,9,8,16,0,0,6,16,0,23,25,205,7,201,192,0,0,6,3,0,0,11,2,24,0,0,0,0,0,0,0,0,0,61,0,0,0,161,18,0,0,101,46,0,0,11,69,0,0,13,0,2,0,1,0,12,0,2,0,100,0,15,0,2,0,1,0,17,0,2,0,0,0,16,0,8,0,252,169,241,210,77,98,80,63,95,0,2,0,1,0,42,0,2,0,0,0,43,0,2,0,0,0,130,0,2,0,1,0,37,2,4,0,0,0,255,0,129,0,2,0,193,4,20,0,3,0,0,0,1,21,0,3,0,0,0,1,131,0,2,0,0,0,132,0,2,0,0,0,38,0,8,0,0,0,0,0,0,0,232,63,39,0,8,0,0,0,0,0,0,0,232,63,40,0,8,0,0,0,0,0,0,0,240,63,41,0,8,0,0,0,0,0,0,0,240,63,161,0,34,0,9,0,100,0,1,0,1,0,1,0,2,0,44,1,44,1,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,1,0,156,8,38,0,156,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,85,0,2,0,8,0,0,2,14,0,0,0,0,0,61,0,0,0,0,0,16,0,0,0,8,2,16,0,0,0,0,0,16,0,28,2,0,0,0,0,64,1,15,0,8,2,16,0,1,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,2,0,0,0,16,0,28,2,0,0,0,0,64,1,15,0,8,2,16,0,3,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,4,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,5,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,6,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,7,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,8,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,9,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,10,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,11,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,12,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,13,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,14,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,15,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,16,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,17,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,18,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,19,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,20,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,21,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,22,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,23,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,24,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,25,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,26,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,27,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,28,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,29,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,30,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,31,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,253,0,10,0,0,0,0,0,47,0,0,0,0,0,253,0,10,0,0,0,1,0,57,0,0,0,0,0,253,0,10,0,0,0,2,0,57,0,0,0,0,0,253,0,10,0,0,0,3,0,57,0,0,0,0,0,253,0,10,0,0,0,4,0,57,0,0,0,0,0,253,0,10,0,0,0,5,0,57,0,0,0,0,0,253,0,10,0,0,0,6,0,57,0,0,0,0,0,253,0,10,0,0,0,7,0,57,0,0,0,0,0,253,0,10,0,0,0,8,0,57,0,0,0,0,0,253,0,10,0,0,0,9,0,57,0,0,0,0,0,253,0,10,0,0,0,10,0,57,0,0,0,0,0,253,0,10,0,0,0,11,0,57,0,0,0,0,0,253,0,10,0,0,0,12,0,57,0,0,0,0,0,253,0,10,0,0,0,13,0,57,0,0,0,0,0,253,0,10,0,0,0,14,0,57,0,0,0,0,0,253,0,10,0,0,0,15,0,49,0,0,0,0,0,253,0,10,0,1,0,0,0,58,0,1,0,0,0,253,0,10,0,1,0,1,0,59,0,1,0,0,0,253,0,10,0,1,0,2,0,59,0,2,0,0,0,253,0,10,0,1,0,3,0,59,0,2,0,0,0,253,0,10,0,1,0,4,0,59,0,3,0,0,0,253,0,10,0,1,0,5,0,59,0,3,0,0,0,253,0,10,0,1,0,6,0,59,0,2,0,0,0,253,0,10,0,1,0,7,0,59,0,2,0,0,0,253,0,10,0,1,0,8,0,59,0,4,0,0,0,253,0,10,0,1,0,9,0,59,0,5,0,0,0,253,0,10,0,1,0,10,0,59,0,6,0,0,0,253,0,10,0,1,0,11,0,59,0,2,0,0,0,253,0,10,0,1,0,12,0,59,0,2,0,0,0,253,0,10,0,1,0,13,0,59,0,2,0,0,0,253,0,10,0,1,0,14,0,59,0,2,0,0,0,253,0,10,0,1,0,15,0,60,0,2,0,0,0,253,0,10,0,2,0,0,0,58,0,7,0,0,0,253,0,10,0,2,0,1,0,59,0,7,0,0,0,253,0,10,0,2,0,2,0,61,0,8,0,0,0,253,0,10,0,2,0,3,0,61,0,8,0,0,0,253,0,10,0,2,0,4,0,61,0,8,0,0,0,253,0,10,0,2,0,5,0,61,0,8,0,0,0,253,0,10,0,2,0,6,0,61,0,8,0,0,0,253,0,10,0,2,0,7,0,61,0,8,0,0,0,253,0,10,0,2,0,8,0,61,0,8,0,0,0,253,0,10,0,2,0,9,0,61,0,8,0,0,0,253,0,10,0,2,0,10,0,61,0,8,0,0,0,253,0,10,0,2,0,11,0,61,0,8,0,0,0,253,0,10,0,2,0,12,0,61,0,8,0,0,0,253,0,10,0,2,0,13,0,61,0,8,0,0,0,253,0,10,0,2,0,14,0,61,0,8,0,0,0,253,0,10,0,2,0,15,0,52,0,8,0,0,0,253,0,10,0,3,0,0,0,58,0,9,0,0,0,253,0,10,0,3,0,1,0,59,0,9,0,0,0,253,0,10,0,3,0,2,0,59,0,2,0,0,0,253,0,10,0,3,0,3,0,59,0,2,0,0,0,253,0,10,0,3,0,4,0,59,0,2,0,0,0,253,0,10,0,3,0,5,0,59,0,2,0,0,0,253,0,10,0,3,0,6,0,59,0,2,0,0,0,253,0,10,0,3,0,7,0,59,0,2,0,0,0,253,0,10,0,3,0,8,0,59,0,2,0,0,0,253,0,10,0,3,0,9,0,59,0,2,0,0,0,253,0,10,0,3,0,10,0,59,0,2,0,0,0,253,0,10,0,3,0,11,0,59,0,2,0,0,0,253,0,10,0,3,0,12,0,59,0,2,0,0,0,253,0,10,0,3,0,13,0,59,0,2,0,0,0,253,0,10,0,3,0,14,0,59,0,2,0,0,0,253,0,10,0,3,0,15,0,60,0,2,0,0,0,253,0,10,0,4,0,0,0,58,0,10,0,0,0,253,0,10,0,4,0,1,0,59,0,11,0,0,0,253,0,10,0,4,0,2,0,59,0,12,0,0,0,253,0,10,0,4,0,3,0,59,0,12,0,0,0,253,0,10,0,4,0,4,0,59,0,12,0,0,0,253,0,10,0,4,0,5,0,59,0,12,0,0,0,253,0,10,0,4,0,6,0,59,0,12,0,0,0,253,0,10,0,4,0,7,0,59,0,12,0,0,0,253,0,10,0,4,0,8,0,59,0,21,0,0,0,253,0,10,0,4,0,9,0,59,0,21,0,0,0,253,0,10,0,4,0,10,0,59,0,2,0,0,0,253,0,10,0,4,0,11,0,59,0,2,0,0,0,253,0,10,0,4,0,12,0,59,0,2,0,0,0,253,0,10,0,4,0,13,0,59,0,2,0,0,0,253,0,10,0,4,0,14,0,59,0,2,0,0,0,253,0,10,0,4,0,15,0,60,0,2,0,0,0,253,0,10,0,5,0,0,0,58,0,10,0,0,0,253,0,10,0,5,0,1,0,59,0,13,0,0,0,253,0,10,0,5,0,2,0,59,0,14,0,0,0,253,0,10,0,5,0,3,0,59,0,14,0,0,0,253,0,10,0,5,0,4,0,59,0,14,0,0,0,253,0,10,0,5,0,5,0,59,0,14,0,0,0,253,0,10,0,5,0,6,0,59,0,14,0,0,0,253,0,10,0,5,0,7,0,59,0,14,0,0,0,253,0,10,0,5,0,8,0,59,0,22,0,0,0,253,0,10,0,5,0,9,0,59,0,22,0,0,0,253,0,10,0,5,0,10,0,59,0,23,0,0,0,253,0,10,0,5,0,11,0,59,0,23,0,0,0,253,0,10,0,5,0,12,0,59,0,23,0,0,0,253,0,10,0,5,0,13,0,59,0,23,0,0,0,253,0,10,0,5,0,14,0,59,0,23,0,0,0,253,0,10,0,5,0,15,0,60,0,23,0,0,0,253,0,10,0,6,0,0,0,58,0,10,0,0,0,253,0,10,0,6,0,1,0,59,0,15,0,0,0,253,0,10,0,6,0,2,0,59,0,2,0,0,0,253,0,10,0,6,0,3,0,59,0,2,0,0,0,253,0,10,0,6,0,4,0,59,0,2,0,0,0,253,0,10,0,6,0,5,0,59,0,2,0,0,0,253,0,10,0,6,0,6,0,59,0,2,0,0,0,253,0,10,0,6,0,7,0,59,0,2,0,0,0,253,0,10,0,6,0,8,0,59,0,24,0,0,0,253,0,10,0,6,0,9,0,59,0,24,0,0,0,253,0,10,0,6,0,10,0,59,0,2,0,0,0,253,0,10,0,6,0,11,0,59,0,2,0,0,0,253,0,10,0,6,0,12,0,59,0,2,0,0,0,253,0,10,0,6,0,13,0,59,0,2,0,0,0,253,0,10,0,6,0,14,0,59,0,2,0,0,0,253,0,10,0,6,0,15,0,60,0,2,0,0,0,253,0,10,0,7,0,0,0,58,0,10,0,0,0,253,0,10,0,7,0,1,0,59,0,16,0,0,0,253,0,10,0,7,0,2,0,59,0,2,0,0,0,253,0,10,0,7,0,3,0,59,0,2,0,0,0,253,0,10,0,7,0,4,0,59,0,2,0,0,0,253,0,10,0,7,0,5,0,59,0,2,0,0,0,253,0,10,0,7,0,6,0,59,0,2,0,0,0,253,0,10,0,7,0,7,0,59,0,2,0,0,0,253,0,10,0,7,0,8,0,59,0,25,0,0,0,253,0,10,0,7,0,9,0,59,0,25,0,0,0,253,0,10,0,7,0,10,0,59,0,2,0,0,0,253,0,10,0,7,0,11,0,59,0,2,0,0,0,253,0,10,0,7,0,12,0,59,0,2,0,0,0,253,0,10,0,7,0,13,0,59,0,2,0,0,0,253,0,10,0,7,0,14,0,59,0,2,0,0,0,253,0,10,0,7,0,15,0,60,0,2,0,0,0,253,0,10,0,8,0,0,0,58,0,10,0,0,0,253,0,10,0,8,0,1,0,59,0,17,0,0,0,253,0,10,0,8,0,2,0,59,0,18,0,0,0,253,0,10,0,8,0,3,0,59,0,18,0,0,0,253,0,10,0,8,0,4,0,59,0,18,0,0,0,253,0,10,0,8,0,5,0,59,0,18,0,0,0,253,0,10,0,8,0,6,0,59,0,18,0,0,0,253,0,10,0,8,0,7,0,59,0,18,0,0,0,253,0,10,0,8,0,8,0,59,0,26,0,0,0,253,0,10,0,8,0,9,0,59,0,26,0,0,0,253,0,10,0,8,0,10,0,59,0,27,0,0,0,253,0,10,0,8,0,11,0,59,0,27,0,0,0,253,0,10,0,8,0,12,0,59,0,27,0,0,0,253,0,10,0,8,0,13,0,59,0,27,0,0,0,253,0,10,0,8,0,14,0,59,0,27,0,0,0,253,0,10,0,8,0,15,0,60,0,27,0,0,0,253,0,10,0,9,0,0,0,58,0,10,0,0,0,253,0,10,0,9,0,1,0,59,0,19,0,0,0,253,0,10,0,9,0,2,0,59,0,2,0,0,0,253,0,10,0,9,0,3,0,59,0,2,0,0,0,253,0,10,0,9,0,4,0,59,0,2,0,0,0,253,0,10,0,9,0,5,0,59,0,2,0,0,0,253,0,10,0,9,0,6,0,59,0,2,0,0,0,253,0,10,0,9,0,7,0,59,0,2,0,0,0,253,0,10,0,9,0,8,0,59,0,28,0,0,0,253,0,10,0,9,0,9,0,59,0,28,0,0,0,253,0,10,0,9,0,10,0,59,0,2,0,0,0,253,0,10,0,9,0,11,0,59,0,2,0,0,0,253,0,10,0,9,0,12,0,59,0,2,0,0,0,253,0,10,0,9,0,13,0,59,0,2,0,0,0,253,0,10,0,9,0,14,0,59,0,2,0,0,0,253,0,10,0,9,0,15,0,60,0,2,0,0,0,253,0,10,0,10,0,0,0,58,0,10,0,0,0,253,0,10,0,10,0,1,0,59,0,20,0,0,0,253,0,10,0,10,0,2,0,59,0,2,0,0,0,253,0,10,0,10,0,3,0,59,0,2,0,0,0,253,0,10,0,10,0,4,0,59,0,2,0,0,0,253,0,10,0,10,0,5,0,59,0,2,0,0,0,253,0,10,0,10,0,6,0,59,0,2,0,0,0,253,0,10,0,10,0,7,0,59,0,2,0,0,0,253,0,10,0,10,0,8,0,59,0,29,0,0,0,253,0,10,0,10,0,9,0,59,0,29,0,0,0,253,0,10,0,10,0,10,0,59,0,2,0,0,0,253,0,10,0,10,0,11,0,59,0,2,0,0,0,253,0,10,0,10,0,12,0,59,0,2,0,0,0,253,0,10,0,10,0,13,0,59,0,2,0,0,0,253,0,10,0,10,0,14,0,59,0,2,0,0,0,253,0,10,0,10,0,15,0,60,0,2,0,0,0,253,0,10,0,11,0,0,0,58,0,10,0,0,0,253,0,10,0,11,0,1,0,59,0,30,0,0,0,253,0,10,0,11,0,2,0,59,0,2,0,0,0,253,0,10,0,11,0,3,0,59,0,2,0,0,0,253,0,10,0,11,0,4,0,59,0,2,0,0,0,253,0,10,0,11,0,5,0,59,0,2,0,0,0,253,0,10,0,11,0,6,0,59,0,2,0,0,0,253,0,10,0,11,0,7,0,59,0,2,0,0,0,253,0,10,0,11,0,8,0,59,0,2,0,0,0,253,0,10,0,11,0,9,0,59,0,2,0,0,0,253,0,10,0,11,0,10,0,59,0,2,0,0,0,253,0,10,0,11,0,11,0,59,0,2,0,0,0,253,0,10,0,11,0,12,0,59,0,2,0,0,0,253,0,10,0,11,0,13,0,59,0,2,0,0,0,253,0,10,0,11,0,14,0,59,0,2,0,0,0,253,0,10,0,11,0,15,0,60,0,2,0,0,0,253,0,10,0,12,0,0,0,58,0,31,0,0,0,253,0,10,0,12,0,1,0,59,0,32,0,0,0,253,0,10,0,12,0,2,0,59,0,33,0,0,0,253,0,10,0,12,0,3,0,59,0,33,0,0,0,253,0,10,0,12,0,4,0,59,0,33,0,0,0,253,0,10,0,12,0,5,0,59,0,33,0,0,0,253,0,10,0,12,0,6,0,59,0,33,0,0,0,253,0,10,0,12,0,7,0,59,0,33,0,0,0,253,0,10,0,12,0,8,0,59,0,34,0,0,0,253,0,10,0,12,0,9,0,59,0,34,0,0,0,253,0,10,0,12,0,10,0,59,0,35,0,0,0,253,0,10,0,12,0,11,0,59,0,35,0,0,0,253,0,10,0,12,0,12,0,59,0,35,0,0,0,253,0,10,0,12,0,13,0,59,0,35,0,0,0,253,0,10,0,12,0,14,0,59,0,35,0,0,0,253,0,10,0,12,0,15,0,60,0,35,0,0,0,253,0,10,0,13,0,0,0,58,0,31,0,0,0,253,0,10,0,13,0,1,0,59,0,36,0,0,0,253,0,10,0,13,0,2,0,59,0,37,0,0,0,253,0,10,0,13,0,3,0,59,0,37,0,0,0,253,0,10,0,13,0,4,0,59,0,37,0,0,0,253,0,10,0,13,0,5,0,59,0,37,0,0,0,253,0,10,0,13,0,6,0,59,0,37,0,0,0,253,0,10,0,13,0,7,0,59,0,37,0,0,0,253,0,10,0,13,0,8,0,59,0,37,0,0,0,253,0,10,0,13,0,9,0,59,0,37,0,0,0,253,0,10,0,13,0,10,0,59,0,37,0,0,0,253,0,10,0,13,0,11,0,59,0,37,0,0,0,253,0,10,0,13,0,12,0,59,0,37,0,0,0,253,0,10,0,13,0,13,0,59,0,37,0,0,0,253,0,10,0,13,0,14,0,59,0,37,0,0,0,253,0,10,0,13,0,15,0,60,0,37,0,0,0,253,0,10,0,14,0,0,0,58,0,38,0,0,0,253,0,10,0,14,0,1,0,59,0,39,0,0,0,253,0,10,0,14,0,2,0,59,0,43,0,0,0,253,0,10,0,14,0,3,0,59,0,43,0,0,0,253,0,10,0,14,0,4,0,59,0,43,0,0,0,253,0,10,0,14,0,5,0,59,0,43,0,0,0,253,0,10,0,14,0,6,0,59,0,43,0,0,0,253,0,10,0,14,0,7,0,59,0,41,0,0,0,253,0,10,0,14,0,8,0,59,0,41,0,0,0,253,0,10,0,14,0,9,0,59,0,41,0,0,0,253,0,10,0,14,0,10,0,59,0,45,0,0,0,253,0,10,0,14,0,11,0,59,0,45,0,0,0,253,0,10,0,14,0,12,0,59,0,45,0,0,0,253,0,10,0,14,0,13,0,59,0,45,0,0,0,253,0,10,0,14,0,14,0,59,0,45,0,0,0,253,0,10,0,14,0,15,0,60,0,45,0,0,0,253,0,10,0,15,0,0,0,58,0,38,0,0,0,253,0,10,0,15,0,1,0,59,0,40,0,0,0,253,0,10,0,15,0,2,0,59,0,44,0,0,0,253,0,10,0,15,0,3,0,59,0,44,0,0,0,253,0,10,0,15,0,4,0,59,0,44,0,0,0,253,0,10,0,15,0,5,0,59,0,44,0,0,0,253,0,10,0,15,0,6,0,59,0,44,0,0,0,253,0,10,0,15,0,7,0,59,0,42,0,0,0,253,0,10,0,15,0,8,0,59,0,42,0,0,0,253,0,10,0,15,0,9,0,59,0,42,0,0,0,253,0,10,0,15,0,10,0,59,0,46,0,0,0,253,0,10,0,15,0,11,0,59,0,46,0,0,0,253,0,10,0,15,0,12,0,59,0,46,0,0,0,253,0,10,0,15,0,13,0,59,0,46,0,0,0,253,0,10,0,15,0,14,0,59,0,46,0,0,0,253,0,10,0,15,0,15,0,60,0,46,0,0,0,253,0,10,0,16,0,0,0,58,0,38,0,0,0,253,0,10,0,16,0,1,0,59,0,47,0,0,0,253,0,10,0,16,0,2,0,59,0,49,0,0,0,253,0,10,0,16,0,3,0,59,0,49,0,0,0,253,0,10,0,16,0,4,0,59,0,49,0,0,0,253,0,10,0,16,0,5,0,59,0,49,0,0,0,253,0,10,0,16,0,6,0,59,0,49,0,0,0,253,0,10,0,16,0,7,0,59,0,48,0,0,0,253,0,10,0,16,0,8,0,59,0,48,0,0,0,253,0,10,0,16,0,9,0,59,0,48,0,0,0,253,0,10,0,16,0,10,0,59,0,50,0,0,0,253,0,10,0,16,0,11,0,59,0,50,0,0,0,253,0,10,0,16,0,12,0,59,0,50,0,0,0,253,0,10,0,16,0,13,0,59,0,50,0,0,0,253,0,10,0,16,0,14,0,59,0,50,0,0,0,253,0,10,0,16,0,15,0,60,0,50,0,0,0,253,0,10,0,17,0,0,0,58,0,51,0,0,0,253,0,10,0,17,0,1,0,59,0,39,0,0,0,190,0,16,0,17,0,2,0,59,0,59,0,59,0,59,0,59,0,6,0,253,0,10,0,17,0,7,0,59,0,41,0,0,0,253,0,10,0,17,0,8,0,59,0,41,0,0,0,253,0,10,0,17,0,9,0,59,0,41,0,0,0,190,0,18,0,17,0,10,0,59,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,18,0,0,0,58,0,51,0,0,0,253,0,10,0,18,0,1,0,59,0,40,0,0,0,190,0,16,0,18,0,2,0,59,0,59,0,59,0,59,0,59,0,6,0,253,0,10,0,18,0,7,0,59,0,42,0,0,0,253,0,10,0,18,0,8,0,59,0,42,0,0,0,253,0,10,0,18,0,9,0,59,0,42,0,0,0,190,0,18,0,18,0,10,0,59,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,19,0,0,0,58,0,52,0,0,0,253,0,10,0,19,0,1,0,59,0,53,0,0,0,253,0,10,0,19,0,2,0,59,0,2,0,0,0,253,0,10,0,19,0,3,0,59,0,2,0,0,0,253,0,10,0,19,0,4,0,59,0,2,0,0,0,253,0,10,0,19,0,5,0,59,0,2,0,0,0,253,0,10,0,19,0,6,0,59,0,2,0,0,0,253,0,10,0,19,0,7,0,59,0,55,0,0,0,253,0,10,0,19,0,8,0,59,0,56,0,0,0,253,0,10,0,19,0,9,0,59,0,56,0,0,0,253,0,10,0,19,0,10,0,59,0,2,0,0,0,253,0,10,0,19,0,11,0,59,0,2,0,0,0,253,0,10,0,19,0,12,0,59,0,2,0,0,0,253,0,10,0,19,0,13,0,59,0,2,0,0,0,253,0,10,0,19,0,14,0,59,0,2,0,0,0,253,0,10,0,19,0,15,0,60,0,2,0,0,0,253,0,10,0,20,0,0,0,58,0,52,0,0,0,253,0,10,0,20,0,1,0,59,0,54,0,0,0,253,0,10,0,20,0,2,0,59,0,2,0,0,0,253,0,10,0,20,0,3,0,59,0,2,0,0,0,253,0,10,0,20,0,4,0,59,0,2,0,0,0,253,0,10,0,20,0,5,0,59,0,2,0,0,0,253,0,10,0,20,0,6,0,59,0,2,0,0,0,253,0,10,0,20,0,7,0,59,0,55,0,0,0,253,0,10,0,20,0,8,0,59,0,57,0,0,0,253,0,10,0,20,0,9,0,59,0,57,0,0,0,253,0,10,0,20,0,10,0,59,0,2,0,0,0,253,0,10,0,20,0,11,0,59,0,2,0,0,0,253,0,10,0,20,0,12,0,59,0,2,0,0,0,253,0,10,0,20,0,13,0,59,0,2,0,0,0,253,0,10,0,20,0,14,0,59,0,2,0,0,0,253,0,10,0,20,0,15,0,60,0,2,0,0,0,253,0,10,0,21,0,0,0,58,0,58,0,0,0,253,0,10,0,21,0,1,0,59,0,58,0,0,0,253,0,10,0,21,0,2,0,59,0,2,0,0,0,253,0,10,0,21,0,3,0,59,0,2,0,0,0,253,0,10,0,21,0,4,0,59,0,2,0,0,0,253,0,10,0,21,0,5,0,59,0,2,0,0,0,253,0,10,0,21,0,6,0,59,0,2,0,0,0,253,0,10,0,21,0,7,0,59,0,2,0,0,0,253,0,10,0,21,0,8,0,59,0,2,0,0,0,253,0,10,0,21,0,9,0,59,0,2,0,0,0,253,0,10,0,21,0,10,0,59,0,2,0,0,0,253,0,10,0,21,0,11,0,59,0,2,0,0,0,253,0,10,0,21,0,12,0,59,0,2,0,0,0,253,0,10,0,21,0,13,0,59,0,2,0,0,0,253,0,10,0,21,0,14,0,59,0,2,0,0,0,253,0,10,0,21,0,15,0,60,0,2,0,0,0,253,0,10,0,22,0,0,0,58,0,59,0,0,0,253,0,10,0,22,0,1,0,59,0,60,0,0,0,253,0,10,0,22,0,2,0,59,0,61,0,0,0,253,0,10,0,22,0,3,0,59,0,12,0,0,0,253,0,10,0,22,0,4,0,59,0,62,0,0,0,253,0,10,0,22,0,5,0,59,0,63,0,0,0,253,0,10,0,22,0,6,0,59,0,64,0,0,0,253,0,10,0,22,0,7,0,59,0,65,0,0,0,253,0,10,0,22,0,8,0,59,0,66,0,0,0,253,0,10,0,22,0,9,0,59,0,67,0,0,0,253,0,10,0,22,0,10,0,59,0,68,0,0,0,190,0,16,0,22,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,23,0,0,0,58,0,69,0,0,0,253,0,10,0,23,0,1,0,59,0,70,0,0,0,253,0,10,0,23,0,2,0,59,0,71,0,0,0,253,0,10,0,23,0,3,0,59,0,72,0,0,0,253,0,10,0,23,0,4,0,59,0,72,0,0,0,253,0,10,0,23,0,5,0,59,0,72,0,0,0,253,0,10,0,23,0,6,0,59,0,72,0,0,0,253,0,10,0,23,0,7,0,59,0,72,0,0,0,253,0,10,0,23,0,8,0,59,0,72,0,0,0,253,0,10,0,23,0,9,0,59,0,72,0,0,0,253,0,10,0,23,0,10,0,59,0,72,0,0,0,190,0,16,0,23,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,24,0,0,0,58,0,73,0,0,0,253,0,10,0,24,0,1,0,59,0,74,0,0,0,253,0,10,0,24,0,2,0,59,0,71,0,0,0,253,0,10,0,24,0,3,0,59,0,72,0,0,0,253,0,10,0,24,0,4,0,59,0,72,0,0,0,253,0,10,0,24,0,5,0,59,0,72,0,0,0,253,0,10,0,24,0,6,0,59,0,72,0,0,0,253,0,10,0,24,0,7,0,59,0,72,0,0,0,253,0,10,0,24,0,8,0,59,0,72,0,0,0,253,0,10,0,24,0,9,0,59,0,72,0,0,0,253,0,10,0,24,0,10,0,59,0,72,0,0,0,190,0,16,0,24,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,25,0,0,0,58,0,75,0,0,0,253,0,10,0,25,0,1,0,59,0,76,0,0,0,253,0,10,0,25,0,2,0,59,0,71,0,0,0,253,0,10,0,25,0,3,0,59,0,72,0,0,0,253,0,10,0,25,0,4,0,59,0,72,0,0,0,253,0,10,0,25,0,5,0,59,0,72,0,0,0,253,0,10,0,25,0,6,0,59,0,72,0,0,0,253,0,10,0,25,0,7,0,59,0,72,0,0,0,253,0,10,0,25,0,8,0,59,0,72,0,0,0,253,0,10,0,25,0,9,0,59,0,72,0,0,0,253,0,10,0,25,0,10,0,59,0,72,0,0,0,190,0,16,0,25,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,26,0,0,0,58,0,77,0,0,0,253,0,10,0,26,0,1,0,59,0,78,0,0,0,253,0,10,0,26,0,2,0,59,0,71,0,0,0,253,0,10,0,26,0,3,0,59,0,72,0,0,0,253,0,10,0,26,0,4,0,59,0,72,0,0,0,253,0,10,0,26,0,5,0,59,0,72,0,0,0,253,0,10,0,26,0,6,0,59,0,72,0,0,0,253,0,10,0,26,0,7,0,59,0,72,0,0,0,253,0,10,0,26,0,8,0,59,0,72,0,0,0,253,0,10,0,26,0,9,0,59,0,72,0,0,0,253,0,10,0,26,0,10,0,59,0,72,0,0,0,190,0,16,0,26,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,27,0,0,0,58,0,79,0,0,0,253,0,10,0,27,0,1,0,59,0,80,0,0,0,253,0,10,0,27,0,2,0,59,0,81,0,0,0,253,0,10,0,27,0,3,0,59,0,72,0,0,0,253,0,10,0,27,0,4,0,59,0,72,0,0,0,253,0,10,0,27,0,5,0,59,0,72,0,0,0,253,0,10,0,27,0,6,0,59,0,72,0,0,0,253,0,10,0,27,0,7,0,59,0,72,0,0,0,253,0,10,0,27,0,8,0,59,0,72,0,0,0,253,0,10,0,27,0,9,0,59,0,72,0,0,0,253,0,10,0,27,0,10,0,59,0,72,0,0,0,190,0,16,0,27,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,28,0,0,0,58,0,82,0,0,0,253,0,10,0,28,0,1,0,59,0,83,0,0,0,253,0,10,0,28,0,2,0,59,0,81,0,0,0,253,0,10,0,28,0,3,0,59,0,72,0,0,0,253,0,10,0,28,0,4,0,59,0,72,0,0,0,253,0,10,0,28,0,5,0,59,0,72,0,0,0,253,0,10,0,28,0,6,0,59,0,72,0,0,0,253,0,10,0,28,0,7,0,59,0,72,0,0,0,253,0,10,0,28,0,8,0,59,0,72,0,0,0,253,0,10,0,28,0,9,0,59,0,72,0,0,0,253,0,10,0,28,0,10,0,59,0,72,0,0,0,190,0,16,0,28,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,29,0,0,0,58,0,84,0,0,0,253,0,10,0,29,0,1,0,59,0,85,0,0,0,253,0,10,0,29,0,2,0,59,0,81,0,0,0,253,0,10,0,29,0,3,0,59,0,72,0,0,0,253,0,10,0,29,0,4,0,59,0,72,0,0,0,253,0,10,0,29,0,5,0,59,0,72,0,0,0,253,0,10,0,29,0,6,0,59,0,72,0,0,0,253,0,10,0,29,0,7,0,59,0,72,0,0,0,253,0,10,0,29,0,8,0,59,0,72,0,0,0,253,0,10,0,29,0,9,0,59,0,72,0,0,0,253,0,10,0,29,0,10,0,59,0,72,0,0,0,190,0,16,0,29,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,30,0,0,0,58,0,86,0,0,0,253,0,10,0,30,0,1,0,59,0,87,0,0,0,253,0,10,0,30,0,2,0,59,0,81,0,0,0,253,0,10,0,30,0,3,0,59,0,72,0,0,0,253,0,10,0,30,0,4,0,59,0,72,0,0,0,253,0,10,0,30,0,5,0,59,0,72,0,0,0,253,0,10,0,30,0,6,0,59,0,72,0,0,0,253,0,10,0,30,0,7,0,59,0,72,0,0,0,253,0,10,0,30,0,8,0,59,0,72,0,0,0,253,0,10,0,30,0,9,0,59,0,72,0,0,0,253,0,10,0,30,0,10,0,59,0,72,0,0,0,190,0,16,0,30,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,31,0,0,0,58,0,88,0,0,0,253,0,10,0,31,0,1,0,59,0,89,0,0,0,253,0,10,0,31,0,2,0,59,0,81,0,0,0,253,0,10,0,31,0,3,0,59,0,72,0,0,0,253,0,10,0,31,0,4,0,59,0,72,0,0,0,253,0,10,0,31,0,5,0,59,0,72,0,0,0,253,0,10,0,31,0,6,0,59,0,72,0,0,0,253,0,10,0,31,0,7,0,59,0,72,0,0,0,253,0,10,0,31,0,8,0,59,0,72,0,0,0,253,0,10,0,31,0,9,0,59,0,72,0,0,0,253,0,10,0,31,0,10,0,59,0,72,0,0,0,190,0,16,0,31,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,215,0,68,0,172,27,0,0,108,2,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,112,0,112,0,224,0,224,0,224,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,8,2,16,0,32,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,33,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,34,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,35,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,36,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,37,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,38,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,39,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,40,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,41,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,42,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,43,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,44,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,45,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,46,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,47,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,48,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,49,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,50,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,51,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,52,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,53,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,54,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,55,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,56,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,57,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,58,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,59,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,60,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,253,0,10,0,32,0,0,0,58,0,90,0,0,0,253,0,10,0,32,0,1,0,59,0,91,0,0,0,253,0,10,0,32,0,2,0,59,0,81,0,0,0,253,0,10,0,32,0,3,0,59,0,72,0,0,0,253,0,10,0,32,0,4,0,59,0,72,0,0,0,253,0,10,0,32,0,5,0,59,0,72,0,0,0,253,0,10,0,32,0,6,0,59,0,72,0,0,0,253,0,10,0,32,0,7,0,59,0,72,0,0,0,253,0,10,0,32,0,8,0,59,0,72,0,0,0,253,0,10,0,32,0,9,0,59,0,72,0,0,0,253,0,10,0,32,0,10,0,59,0,72,0,0,0,190,0,16,0,32,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,33,0,0,0,58,0,92,0,0,0,253,0,10,0,33,0,1,0,59,0,93,0,0,0,253,0,10,0,33,0,2,0,59,0,94,0,0,0,253,0,10,0,33,0,3,0,59,0,72,0,0,0,253,0,10,0,33,0,4,0,59,0,72,0,0,0,253,0,10,0,33,0,5,0,59,0,72,0,0,0,253,0,10,0,33,0,6,0,59,0,72,0,0,0,253,0,10,0,33,0,7,0,59,0,72,0,0,0,253,0,10,0,33,0,8,0,59,0,72,0,0,0,253,0,10,0,33,0,9,0,59,0,72,0,0,0,253,0,10,0,33,0,10,0,59,0,72,0,0,0,190,0,16,0,33,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,34,0,0,0,58,0,95,0,0,0,253,0,10,0,34,0,1,0,59,0,96,0,0,0,253,0,10,0,34,0,2,0,59,0,71,0,0,0,253,0,10,0,34,0,3,0,59,0,72,0,0,0,253,0,10,0,34,0,4,0,59,0,72,0,0,0,253,0,10,0,34,0,5,0,59,0,72,0,0,0,253,0,10,0,34,0,6,0,59,0,72,0,0,0,253,0,10,0,34,0,7,0,59,0,72,0,0,0,253,0,10,0,34,0,8,0,59,0,72,0,0,0,253,0,10,0,34,0,9,0,59,0,72,0,0,0,253,0,10,0,34,0,10,0,59,0,72,0,0,0,190,0,16,0,34,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,35,0,0,0,58,0,97,0,0,0,253,0,10,0,35,0,1,0,59,0,98,0,0,0,253,0,10,0,35,0,2,0,59,0,71,0,0,0,253,0,10,0,35,0,3,0,59,0,72,0,0,0,253,0,10,0,35,0,4,0,59,0,72,0,0,0,253,0,10,0,35,0,5,0,59,0,72,0,0,0,253,0,10,0,35,0,6,0,59,0,72,0,0,0,253,0,10,0,35,0,7,0,59,0,72,0,0,0,253,0,10,0,35,0,8,0,59,0,72,0,0,0,253,0,10,0,35,0,9,0,59,0,72,0,0,0,253,0,10,0,35,0,10,0,59,0,72,0,0,0,190,0,16,0,35,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,36,0,0,0,58,0,99,0,0,0,253,0,10,0,36,0,1,0,59,0,100,0,0,0,253,0,10,0,36,0,2,0,59,0,71,0,0,0,253,0,10,0,36,0,3,0,59,0,72,0,0,0,253,0,10,0,36,0,4,0,59,0,72,0,0,0,253,0,10,0,36,0,5,0,59,0,72,0,0,0,253,0,10,0,36,0,6,0,59,0,72,0,0,0,253,0,10,0,36,0,7,0,59,0,72,0,0,0,253,0,10,0,36,0,8,0,59,0,72,0,0,0,253,0,10,0,36,0,9,0,59,0,72,0,0,0,253,0,10,0,36,0,10,0,59,0,72,0,0,0,190,0,16,0,36,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,37,0,0,0,58,0,101,0,0,0,253,0,10,0,37,0,1,0,59,0,102,0,0,0,253,0,10,0,37,0,2,0,59,0,71,0,0,0,253,0,10,0,37,0,3,0,59,0,72,0,0,0,253,0,10,0,37,0,4,0,59,0,72,0,0,0,253,0,10,0,37,0,5,0,59,0,72,0,0,0,253,0,10,0,37,0,6,0,59,0,72,0,0,0,253,0,10,0,37,0,7,0,59,0,72,0,0,0,253,0,10,0,37,0,8,0,59,0,72,0,0,0,253,0,10,0,37,0,9,0,59,0,72,0,0,0,253,0,10,0,37,0,10,0,59,0,72,0,0,0,190,0,16,0,37,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,38,0,0,0,58,0,103,0,0,0,253,0,10,0,38,0,1,0,59,0,104,0,0,0,253,0,10,0,38,0,2,0,59,0,71,0,0,0,253,0,10,0,38,0,3,0,59,0,72,0,0,0,253,0,10,0,38,0,4,0,59,0,72,0,0,0,253,0,10,0,38,0,5,0,59,0,72,0,0,0,253,0,10,0,38,0,6,0,59,0,72,0,0,0,253,0,10,0,38,0,7,0,59,0,72,0,0,0,253,0,10,0,38,0,8,0,59,0,72,0,0,0,253,0,10,0,38,0,9,0,59,0,72,0,0,0,253,0,10,0,38,0,10,0,59,0,72,0,0,0,190,0,16,0,38,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,39,0,0,0,58,0,105,0,0,0,253,0,10,0,39,0,1,0,59,0,106,0,0,0,253,0,10,0,39,0,2,0,59,0,71,0,0,0,253,0,10,0,39,0,3,0,59,0,72,0,0,0,253,0,10,0,39,0,4,0,59,0,72,0,0,0,253,0,10,0,39,0,5,0,59,0,72,0,0,0,253,0,10,0,39,0,6,0,59,0,72,0,0,0,253,0,10,0,39,0,7,0,59,0,72,0,0,0,253,0,10,0,39,0,8,0,59,0,72,0,0,0,253,0,10,0,39,0,9,0,59,0,72,0,0,0,253,0,10,0,39,0,10,0,59,0,72,0,0,0,190,0,16,0,39,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,40,0,0,0,58,0,107,0,0,0,253,0,10,0,40,0,1,0,59,0,108,0,0,0,253,0,10,0,40,0,2,0,59,0,71,0,0,0,253,0,10,0,40,0,3,0,59,0,72,0,0,0,253,0,10,0,40,0,4,0,59,0,72,0,0,0,253,0,10,0,40,0,5,0,59,0,72,0,0,0,253,0,10,0,40,0,6,0,59,0,72,0,0,0,253,0,10,0,40,0,7,0,59,0,72,0,0,0,253,0,10,0,40,0,8,0,59,0,72,0,0,0,253,0,10,0,40,0,9,0,59,0,72,0,0,0,253,0,10,0,40,0,10,0,59,0,72,0,0,0,190,0,16,0,40,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,41,0,0,0,58,0,109,0,0,0,253,0,10,0,41,0,1,0,59,0,110,0,0,0,253,0,10,0,41,0,2,0,59,0,71,0,0,0,253,0,10,0,41,0,3,0,59,0,72,0,0,0,253,0,10,0,41,0,4,0,59,0,72,0,0,0,253,0,10,0,41,0,5,0,59,0,72,0,0,0,253,0,10,0,41,0,6,0,59,0,72,0,0,0,253,0,10,0,41,0,7,0,59,0,72,0,0,0,253,0,10,0,41,0,8,0,59,0,72,0,0,0,253,0,10,0,41,0,9,0,59,0,72,0,0,0,253,0,10,0,41,0,10,0,59,0,72,0,0,0,190,0,16,0,41,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,42,0,0,0,58,0,111,0,0,0,253,0,10,0,42,0,1,0,59,0,112,0,0,0,253,0,10,0,42,0,2,0,59,0,71,0,0,0,253,0,10,0,42,0,3,0,59,0,72,0,0,0,253,0,10,0,42,0,4,0,59,0,72,0,0,0,253,0,10,0,42,0,5,0,59,0,72,0,0,0,253,0,10,0,42,0,6,0,59,0,72,0,0,0,253,0,10,0,42,0,7,0,59,0,72,0,0,0,253,0,10,0,42,0,8,0,59,0,72,0,0,0,253,0,10,0,42,0,9,0,59,0,72,0,0,0,253,0,10,0,42,0,10,0,59,0,72,0,0,0,190,0,16,0,42,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,43,0,0,0,58,0,113,0,0,0,253,0,10,0,43,0,1,0,59,0,114,0,0,0,253,0,10,0,43,0,2,0,59,0,71,0,0,0,253,0,10,0,43,0,3,0,59,0,72,0,0,0,253,0,10,0,43,0,4,0,59,0,72,0,0,0,253,0,10,0,43,0,5,0,59,0,72,0,0,0,253,0,10,0,43,0,6,0,59,0,72,0,0,0,253,0,10,0,43,0,7,0,59,0,72,0,0,0,253,0,10,0,43,0,8,0,59,0,72,0,0,0,253,0,10,0,43,0,9,0,59,0,72,0,0,0,253,0,10,0,43,0,10,0,59,0,72,0,0,0,190,0,16,0,43,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,44,0,0,0,58,0,115,0,0,0,253,0,10,0,44,0,1,0,59,0,116,0,0,0,253,0,10,0,44,0,2,0,59,0,71,0,0,0,253,0,10,0,44,0,3,0,59,0,72,0,0,0,253,0,10,0,44,0,4,0,59,0,72,0,0,0,253,0,10,0,44,0,5,0,59,0,72,0,0,0,253,0,10,0,44,0,6,0,59,0,72,0,0,0,253,0,10,0,44,0,7,0,59,0,72,0,0,0,253,0,10,0,44,0,8,0,59,0,72,0,0,0,253,0,10,0,44,0,9,0,59,0,72,0,0,0,253,0,10,0,44,0,10,0,59,0,72,0,0,0,190,0,16,0,44,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,45,0,0,0,58,0,117,0,0,0,253,0,10,0,45,0,1,0,59,0,118,0,0,0,253,0,10,0,45,0,2,0,59,0,71,0,0,0,253,0,10,0,45,0,3,0,59,0,72,0,0,0,253,0,10,0,45,0,4,0,59,0,72,0,0,0,253,0,10,0,45,0,5,0,59,0,72,0,0,0,253,0,10,0,45,0,6,0,59,0,72,0,0,0,253,0,10,0,45,0,7,0,59,0,72,0,0,0,253,0,10,0,45,0,8,0,59,0,72,0,0,0,253,0,10,0,45,0,9,0,59,0,72,0,0,0,253,0,10,0,45,0,10,0,59,0,72,0,0,0,190,0,16,0,45,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,46,0,0,0,58,0,119,0,0,0,253,0,10,0,46,0,1,0,59,0,120,0,0,0,253,0,10,0,46,0,2,0,59,0,71,0,0,0,253,0,10,0,46,0,3,0,59,0,72,0,0,0,253,0,10,0,46,0,4,0,59,0,72,0,0,0,253,0,10,0,46,0,5,0,59,0,72,0,0,0,253,0,10,0,46,0,6,0,59,0,72,0,0,0,253,0,10,0,46,0,7,0,59,0,72,0,0,0,253,0,10,0,46,0,8,0,59,0,72,0,0,0,253,0,10,0,46,0,9,0,59,0,72,0,0,0,253,0,10,0,46,0,10,0,59,0,72,0,0,0,190,0,16,0,46,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,47,0,0,0,58,0,121,0,0,0,253,0,10,0,47,0,1,0,59,0,122,0,0,0,253,0,10,0,47,0,2,0,59,0,71,0,0,0,253,0,10,0,47,0,3,0,59,0,72,0,0,0,253,0,10,0,47,0,4,0,59,0,72,0,0,0,253,0,10,0,47,0,5,0,59,0,72,0,0,0,253,0,10,0,47,0,6,0,59,0,72,0,0,0,253,0,10,0,47,0,7,0,59,0,72,0,0,0,253,0,10,0,47,0,8,0,59,0,72,0,0,0,253,0,10,0,47,0,9,0,59,0,72,0,0,0,253,0,10,0,47,0,10,0,59,0,72,0,0,0,190,0,16,0,47,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,48,0,0,0,58,0,123,0,0,0,253,0,10,0,48,0,1,0,59,0,124,0,0,0,253,0,10,0,48,0,2,0,59,0,71,0,0,0,253,0,10,0,48,0,3,0,59,0,72,0,0,0,253,0,10,0,48,0,4,0,59,0,72,0,0,0,253,0,10,0,48,0,5,0,59,0,72,0,0,0,253,0,10,0,48,0,6,0,59,0,72,0,0,0,253,0,10,0,48,0,7,0,59,0,72,0,0,0,253,0,10,0,48,0,8,0,59,0,72,0,0,0,253,0,10,0,48,0,9,0,59,0,72,0,0,0,253,0,10,0,48,0,10,0,59,0,72,0,0,0,190,0,16,0,48,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,49,0,0,0,58,0,125,0,0,0,253,0,10,0,49,0,1,0,59,0,126,0,0,0,253,0,10,0,49,0,2,0,59,0,71,0,0,0,253,0,10,0,49,0,3,0,59,0,72,0,0,0,253,0,10,0,49,0,4,0,59,0,72,0,0,0,253,0,10,0,49,0,5,0,59,0,72,0,0,0,253,0,10,0,49,0,6,0,59,0,72,0,0,0,253,0,10,0,49,0,7,0,59,0,72,0,0,0,253,0,10,0,49,0,8,0,59,0,72,0,0,0,253,0,10,0,49,0,9,0,59,0,72,0,0,0,253,0,10,0,49,0,10,0,59,0,72,0,0,0,190,0,16,0,49,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,50,0,0,0,58,0,127,0,0,0,253,0,10,0,50,0,1,0,59,0,128,0,0,0,253,0,10,0,50,0,2,0,59,0,71,0,0,0,253,0,10,0,50,0,3,0,59,0,72,0,0,0,253,0,10,0,50,0,4,0,59,0,72,0,0,0,253,0,10,0,50,0,5,0,59,0,72,0,0,0,253,0,10,0,50,0,6,0,59,0,72,0,0,0,253,0,10,0,50,0,7,0,59,0,72,0,0,0,253,0,10,0,50,0,8,0,59,0,72,0,0,0,253,0,10,0,50,0,9,0,59,0,72,0,0,0,253,0,10,0,50,0,10,0,59,0,72,0,0,0,190,0,16,0,50,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,51,0,0,0,58,0,129,0,0,0,253,0,10,0,51,0,1,0,59,0,130,0,0,0,253,0,10,0,51,0,2,0,59,0,71,0,0,0,253,0,10,0,51,0,3,0,59,0,72,0,0,0,253,0,10,0,51,0,4,0,59,0,72,0,0,0,253,0,10,0,51,0,5,0,59,0,72,0,0,0,253,0,10,0,51,0,6,0,59,0,72,0,0,0,253,0,10,0,51,0,7,0,59,0,72,0,0,0,253,0,10,0,51,0,8,0,59,0,72,0,0,0,253,0,10,0,51,0,9,0,59,0,72,0,0,0,253,0,10,0,51,0,10,0,59,0,72,0,0,0,190,0,16,0,51,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,52,0,0,0,58,0,131,0,0,0,253,0,10,0,52,0,1,0,59,0,132,0,0,0,253,0,10,0,52,0,2,0,59,0,71,0,0,0,253,0,10,0,52,0,3,0,59,0,72,0,0,0,253,0,10,0,52,0,4,0,59,0,72,0,0,0,253,0,10,0,52,0,5,0,59,0,72,0,0,0,253,0,10,0,52,0,6,0,59,0,72,0,0,0,253,0,10,0,52,0,7,0,59,0,72,0,0,0,253,0,10,0,52,0,8,0,59,0,72,0,0,0,253,0,10,0,52,0,9,0,59,0,72,0,0,0,253,0,10,0,52,0,10,0,59,0,72,0,0,0,190,0,16,0,52,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,53,0,0,0,58,0,133,0,0,0,253,0,10,0,53,0,1,0,59,0,134,0,0,0,253,0,10,0,53,0,2,0,59,0,71,0,0,0,253,0,10,0,53,0,3,0,59,0,72,0,0,0,253,0,10,0,53,0,4,0,59,0,72,0,0,0,253,0,10,0,53,0,5,0,59,0,72,0,0,0,253,0,10,0,53,0,6,0,59,0,72,0,0,0,253,0,10,0,53,0,7,0,59,0,72,0,0,0,253,0,10,0,53,0,8,0,59,0,72,0,0,0,253,0,10,0,53,0,9,0,59,0,72,0,0,0,253,0,10,0,53,0,10,0,59,0,72,0,0,0,190,0,16,0,53,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,54,0,0,0,58,0,135,0,0,0,253,0,10,0,54,0,1,0,59,0,136,0,0,0,253,0,10,0,54,0,2,0,59,0,71,0,0,0,253,0,10,0,54,0,3,0,59,0,72,0,0,0,253,0,10,0,54,0,4,0,59,0,72,0,0,0,253,0,10,0,54,0,5,0,59,0,72,0,0,0,253,0,10,0,54,0,6,0,59,0,72,0,0,0,253,0,10,0,54,0,7,0,59,0,72,0,0,0,253,0,10,0,54,0,8,0,59,0,72,0,0,0,253,0,10,0,54,0,9,0,59,0,72,0,0,0,253,0,10,0,54,0,10,0,59,0,72,0,0,0,190,0,16,0,54,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,55,0,0,0,58,0,137,0,0,0,253,0,10,0,55,0,1,0,59,0,138,0,0,0,253,0,10,0,55,0,2,0,59,0,71,0,0,0,253,0,10,0,55,0,3,0,59,0,72,0,0,0,253,0,10,0,55,0,4,0,59,0,72,0,0,0,253,0,10,0,55,0,5,0,59,0,72,0,0,0,253,0,10,0,55,0,6,0,59,0,72,0,0,0,253,0,10,0,55,0,7,0,59,0,72,0,0,0,253,0,10,0,55,0,8,0,59,0,72,0,0,0,253,0,10,0,55,0,9,0,59,0,72,0,0,0,253,0,10,0,55,0,10,0,59,0,72,0,0,0,190,0,16,0,55,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,56,0,0,0,58,0,139,0,0,0,253,0,10,0,56,0,1,0,59,0,140,0,0,0,253,0,10,0,56,0,2,0,59,0,71,0,0,0,253,0,10,0,56,0,3,0,59,0,72,0,0,0,253,0,10,0,56,0,4,0,59,0,72,0,0,0,253,0,10,0,56,0,5,0,59,0,72,0,0,0,253,0,10,0,56,0,6,0,59,0,72,0,0,0,253,0,10,0,56,0,7,0,59,0,72,0,0,0,253,0,10,0,56,0,8,0,59,0,72,0,0,0,253,0,10,0,56,0,9,0,59,0,72,0,0,0,253,0,10,0,56,0,10,0,59,0,72,0,0,0,190,0,16,0,56,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,57,0,0,0,58,0,141,0,0,0,253,0,10,0,57,0,1,0,59,0,142,0,0,0,253,0,10,0,57,0,2,0,59,0,71,0,0,0,253,0,10,0,57,0,3,0,59,0,72,0,0,0,253,0,10,0,57,0,4,0,59,0,72,0,0,0,253,0,10,0,57,0,5,0,59,0,72,0,0,0,253,0,10,0,57,0,6,0,59,0,72,0,0,0,253,0,10,0,57,0,7,0,59,0,72,0,0,0,253,0,10,0,57,0,8,0,59,0,72,0,0,0,253,0,10,0,57,0,9,0,59,0,72,0,0,0,253,0,10,0,57,0,10,0,59,0,72,0,0,0,190,0,16,0,57,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,58,0,0,0,58,0,143,0,0,0,253,0,10,0,58,0,1,0,59,0,144,0,0,0,253,0,10,0,58,0,2,0,59,0,71,0,0,0,253,0,10,0,58,0,3,0,59,0,72,0,0,0,253,0,10,0,58,0,4,0,59,0,72,0,0,0,253,0,10,0,58,0,5,0,59,0,72,0,0,0,253,0,10,0,58,0,6,0,59,0,72,0,0,0,253,0,10,0,58,0,7,0,59,0,72,0,0,0,253,0,10,0,58,0,8,0,59,0,72,0,0,0,253,0,10,0,58,0,9,0,59,0,72,0,0,0,253,0,10,0,58,0,10,0,59,0,72,0,0,0,190,0,16,0,58,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,59,0,0,0,58,0,145,0,0,0,253,0,10,0,59,0,1,0,59,0,145,0,0,0,253,0,10,0,59,0,2,0,59,0,2,0,0,0,253,0,10,0,59,0,3,0,59,0,2,0,0,0,253,0,10,0,59,0,4,0,59,0,2,0,0,0,253,0,10,0,59,0,5,0,59,0,2,0,0,0,253,0,10,0,59,0,6,0,59,0,2,0,0,0,253,0,10,0,59,0,7,0,59,0,2,0,0,0,253,0,10,0,59,0,8,0,59,0,2,0,0,0,253,0,10,0,59,0,9,0,59,0,2,0,0,0,253,0,10,0,59,0,10,0,59,0,2,0,0,0,253,0,10,0,59,0,11,0,59,0,2,0,0,0,253,0,10,0,59,0,12,0,59,0,2,0,0,0,253,0,10,0,59,0,13,0,59,0,2,0,0,0,253,0,10,0,59,0,14,0,59,0,2,0,0,0,253,0,10,0,59,0,15,0,60,0,2,0,0,0,253,0,10,0,60,0,0,0,54,0,30,0,0,0,253,0,10,0,60,0,1,0,62,0,30,0,0,0,253,0,10,0,60,0,2,0,62,0,2,0,0,0,253,0,10,0,60,0,3,0,62,0,2,0,0,0,253,0,10,0,60,0,4,0,62,0,2,0,0,0,253,0,10,0,60,0,5,0,62,0,2,0,0,0,253,0,10,0,60,0,6,0,62,0,2,0,0,0,253,0,10,0,60,0,7,0,62,0,2,0,0,0,253,0,10,0,60,0,8,0,62,0,2,0,0,0,253,0,10,0,60,0,9,0,62,0,2,0,0,0,253,0,10,0,60,0,10,0,62,0,2,0,0,0,253,0,10,0,60,0,11,0,62,0,2,0,0,0,253,0,10,0,60,0,12,0,62,0,2,0,0,0,253,0,10,0,60,0,13,0,62,0,2,0,0,0,253,0,10,0,60,0,14,0,62,0,2,0,0,0,253,0,10,0,60,0,15,0,56,0,2,0,0,0,215,0,62,0,94,22,0,0,48,2,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,224,0,62,2,18,0,182,6,0,0,0,0,64,0,0,0,60,0,100,0,0,0,0,0,171,0,34,0,32,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,229,0,10,2,65,0,0,0,0,0,0,0,15,0,1,0,1,0,0,0,1,0,1,0,1,0,2,0,3,0,1,0,1,0,4,0,5,0,1,0,1,0,6,0,7,0,1,0,1,0,11,0,15,0,2,0,2,0,0,0,1,0,2,0,2,0,2,0,15,0,3,0,3,0,0,0,1,0,3,0,3,0,2,0,15,0,4,0,11,0,0,0,0,0,4,0,4,0,2,0,7,0,5,0,5,0,2,0,7,0,6,0,6,0,2,0,7,0,7,0,7,0,2,0,7,0,8,0,8,0,2,0,7,0,9,0,9,0,2,0,7,0,10,0,10,0,2,0,7,0,4,0,4,0,8,0,9,0,4,0,4,0,10,0,15,0,5,0,5,0,8,0,9,0,5,0,5,0,10,0,15,0,6,0,6,0,8,0,9,0,6,0,6,0,10,0,15,0,7,0,7,0,8,0,9,0,7,0,7,0,10,0,15,0,8,0,8,0,8,0,9,0,8,0,8,0,10,0,15,0,9,0,9,0,8,0,9,0,9,0,9,0,10,0,15,0,10,0,10,0,8,0,9,0,10,0,10,0,10,0,15,0,11,0,11,0,2,0,15,0,12,0,13,0,0,0,0,0,12,0,12,0,2,0,7,0,12,0,12,0,8,0,9,0,12,0,12,0,10,0,15,0,13,0,13,0,2,0,15,0,14,0,16,0,0,0,0,0,14,0,14,0,7,0,9,0,15,0,15,0,7,0,9,0,14,0,14,0,2,0,6,0,15,0,15,0,2,0,6,0,14,0,14,0,10,0,15,0,15,0,15,0,10,0,15,0,16,0,16,0,7,0,9,0,16,0,16,0,2,0,6,0,16,0,16,0,10,0,15,0,17,0,18,0,0,0,0,0,17,0,17,0,7,0,9,0,18,0,18,0,7,0,9,0,19,0,20,0,0,0,0,0,19,0,19,0,2,0,6,0,20,0,20,0,2,0,6,0,19,0,20,0,7,0,7,0,19,0,19,0,8,0,9,0,19,0,19,0,10,0,15,0,20,0,20,0,8,0,9,0,20,0,20,0,10,0,15,0,21,0,21,0,0,0,1,0,21,0,21,0,2,0,15,0,59,0,59,0,0,0,1,0,59,0,59,0,2,0,15,0,60,0,60,0,0,0,1,0,60,0,60,0,2,0,15,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,0,111,0,111,0,116,0,32,0,69,0,110,0,116,0,114,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,0,5,1,255,255,255,255,255,255,255,255,1,0,0,0,32,8,2,0,0,0,0,0,192,0,0,0,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,87,0,111,0,114,0,107,0,98,0,111,0,111,0,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,2,1,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,155,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,254,255,255,255,254,255,255,255,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255]}";
        JSONObject jsonObject = JSONObject.parseObject(str);
        JSONArray reportInfos = jsonObject.getJSONArray("ReportInfo");
        if(reportInfos != null && reportInfos.size()>0){
            int size = reportInfos.size();
            byte[] buf = new byte[size];
            for (int i = 0; i < size; i++) {
                Byte aByte = reportInfos.getByte(i);
                buf[i] = aByte;
            }
            FileUtil.writeBytes(buf,"d:/a.xlsx");
        }
    }

    public static void testJsonToBytes1(){
        String str = "{\"ReportName\":\"111111\",\"ReportInfo\":[208,207,17,224,161,177,26,225,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,0,3,0,254,255,9,0,6,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,0,0,0,0,0,0,0,0,16,0,0,254,255,255,255,0,0,0,0,254,255,255,255,0,0,0,0,37,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,9,8,16,0,0,6,5,0,23,25,205,7,201,192,0,0,6,4,0,0,66,0,2,0,176,4,61,1,2,0,1,0,61,0,18,0,240,0,120,0,92,58,9,36,56,0,0,0,0,0,1,0,88,2,64,0,2,0,0,0,141,0,2,0,0,0,34,0,2,0,0,0,14,0,2,0,1,0,183,1,2,0,0,0,218,0,2,0,0,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,28,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,6,1,84,0,97,0,104,0,111,0,109,0,97,0,49,0,24,0,200,0,0,0,255,127,144,1,0,0,0,2,0,0,4,1,174,95,111,143,197,150,209,158,49,0,24,0,184,1,0,0,255,127,144,1,0,0,0,2,0,0,4,1,174,95,111,143,197,150,209,158,49,0,24,0,184,1,0,0,10,0,144,1,0,0,0,2,0,0,4,1,174,95,111,143,197,150,209,158,224,0,20,0,0,0,0,0,245,255,16,0,0,0,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,245,255,16,0,0,244,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,0,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,9,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,44,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,42,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,43,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,0,0,41,0,245,255,16,0,0,248,0,0,0,0,0,0,0,2,192,32,224,0,20,0,6,0,0,0,1,0,16,0,0,8,0,0,0,0,0,0,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,8,0,0,0,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,8,0,0,0,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,16,0,0,6,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,1,0,12,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,17,0,12,6,0,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,16,0,0,0,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,16,16,128,31,128,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,17,0,63,6,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,17,16,191,31,128,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,1,0,63,0,0,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,1,16,63,0,128,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,16,17,128,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,17,17,191,31,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,40,0,1,0,0,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,1,17,63,0,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,40,1,1,63,0,63,0,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,40,17,17,191,31,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,16,0,0,40,1,17,63,0,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,0,1,0,0,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,16,17,128,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,1,1,63,0,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,17,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,16,1,128,31,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,17,1,191,31,63,0,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,1,1,63,0,63,0,0,2,192,32,224,0,20,0,8,0,0,0,1,0,18,0,0,56,18,18,191,31,191,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,16,0,0,40,17,18,191,31,191,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,18,0,0,56,33,18,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,18,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,33,17,191,31,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,18,0,0,56,33,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,48,18,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,18,33,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,16,0,0,32,17,33,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,33,33,191,31,191,31,0,2,192,32,224,0,20,0,8,0,0,0,1,0,18,0,0,56,17,18,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,18,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,17,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,33,17,191,31,191,31,0,2,192,32,224,0,20,0,7,0,0,0,1,0,18,0,0,56,17,17,191,31,191,31,0,2,192,32,224,0,20,0,0,0,0,0,1,0,18,0,0,48,17,33,191,31,191,31,0,2,192,32,147,2,4,0,0,128,0,255,147,2,4,0,16,128,5,255,147,2,4,0,17,128,4,255,147,2,4,0,18,128,7,255,147,2,4,0,19,128,3,255,147,2,4,0,20,128,6,255,146,0,226,0,56,0,0,0,0,0,255,255,255,0,255,0,0,0,0,255,0,0,0,0,255,0,255,255,0,0,255,0,255,0,0,255,255,0,128,0,0,0,0,128,0,0,0,0,128,0,128,128,0,0,128,0,128,0,0,128,128,0,192,192,192,0,128,128,128,0,153,153,255,0,153,51,102,0,255,255,204,0,204,255,255,0,102,0,102,0,255,128,128,0,0,102,204,0,204,204,255,0,0,0,128,0,255,0,255,0,255,255,0,0,0,255,255,0,128,0,128,0,128,0,0,0,0,128,128,0,0,0,255,0,0,204,255,0,204,255,255,0,204,255,204,0,255,255,153,0,153,204,255,0,255,153,204,0,204,153,255,0,255,204,153,0,51,102,255,0,51,204,204,0,153,204,0,0,255,204,0,0,255,153,0,0,255,102,0,0,102,102,153,0,150,150,150,0,0,51,102,0,51,153,102,0,0,51,0,0,51,51,0,0,153,51,0,0,153,51,102,0,51,51,153,0,51,51,51,0,133,0,18,0,141,17,0,0,0,0,10,0,82,101,115,117,108,116,68,97,116,97,140,0,4,0,1,0,1,0,174,1,4,0,1,0,1,4,23,0,8,0,1,0,0,0,0,0,0,0,193,1,8,0,193,1,0,0,34,190,1,0,235,0,90,0,15,0,0,240,82,0,0,0,0,0,6,240,24,0,0,0,1,4,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,51,0,11,240,18,0,0,0,191,0,8,0,8,0,129,1,9,0,0,8,192,1,64,0,0,8,64,0,30,241,16,0,0,0,13,0,0,8,12,0,0,8,23,0,0,8,247,0,0,16,252,0,235,7,1,3,0,0,146,0,0,0,8,0,1,142,127,132,118,122,122,3,140,75,109,213,139,165,98,74,84,4,0,1,121,152,238,118,227,78,247,83,1,0,0,47,4,0,1,213,139,140,154,22,127,247,83,4,0,1,55,104,58,103,22,127,247,83,2,0,0,49,35,4,0,1,135,101,246,78,22,127,247,83,4,0,1,121,152,238,118,13,84,240,121,6,0,0,49,49,49,49,49,49,4,0,1,213,139,140,154,157,79,110,99,4,0,1,55,104,58,103,225,79,111,96,4,0,1,122,122,3,140,139,87,247,83,1,0,0,49,4,0,1,75,109,213,139,246,101,244,149,16,0,0,50,48,50,51,47,48,53,47,50,54,32,49,53,58,52,54,5,0,1,139,83,41,127,58,103,139,87,247,83,3,0,1,212,89,88,98,185,101,7,0,1,158,91,140,154,77,82,55,104,58,103,182,114,1,96,2,0,1,140,91,125,89,4,0,1,146,99,122,122,185,101,15,95,6,0,1,164,91,133,81,58,103,97,103,98,95,1,120,4,0,1,75,109,213,139,238,118,132,118,4,0,1,75,109,213,139,246,101,127,149,8,0,0,48,48,58,48,48,58,48,48,4,0,1,75,109,213,139,186,78,88,84,3,0,1,161,91,56,104,186,78,7,0,1,213,139,140,154,14,84,55,104,58,103,182,114,1,96,6,0,1,98,96,13,89,159,83,58,103,182,114,1,96,7,0,1,222,143,165,99,161,123,127,149,40,0,115,124,41,0,6,0,1,164,91,22,89,58,103,97,103,98,95,1,120,2,0,1,7,89,232,108,4,0,1,190,139,7,89,225,79,111,96,5,0,1,158,91,140,154,164,91,13,84,240,121,12,0,1,83,0,45,0,89,0,45,0,50,0,48,0,80,0,229,93,181,81,49,0,45,0,49,0,4,0,1,190,139,7,89,22,127,247,83,17,0,0,65,50,50,49,49,48,49,48,48,48,49,50,49,48,48,48,49,5,0,1,190,139,7,89,9,103,72,101,31,103,10,0,0,50,48,50,50,47,48,54,47,48,51,4,0,1,190,139,154,91,229,93,181,81,9,0,1,164,91,133,81,114,94,3,116,41,110,166,94,40,0,3,33,41,0,9,0,1,164,91,133,81,127,110,3,116,41,110,166,94,40,0,3,33,41,0,9,0,1,164,91,22,89,114,94,3,116,41,110,166,94,40,0,3,33,41,0,14,0,1,164,91,22,89,127,110,3,116,41,110,166,94,47,0,127,110,166,94,40,0,3,33,47,0,37,0,41,0,2,0,0,50,55,2,0,0,49,57,2,0,0,51,53,11,0,0,50,52,47,51,57,46,55,50,48,53,50,5,0,1,171,136,75,109,58,103,53,117,139,83,9,0,1,171,136,75,109,58,103,145,152,135,115,40,0,72,0,122,0,41,0,4,0,0,50,50,48,86,4,0,0,53,48,72,122,4,0,1,158,91,69,150,229,93,181,81,6,0,1,55,104,58,103,208,143,76,136,182,114,1,96,4,0,1,208,143,76,136,33,106,15,95,2,0,1,206,152,31,144,3,0,1,1,144,206,152,227,83,5,0,1,52,108,115,94,252,91,206,152,97,103,5,0,1,130,87,244,118,252,91,206,152,97,103,4,0,1,211,126,156,103,36,82,154,91,2,0,1,121,152,238,118,4,0,1,26,144,83,144,13,84,240,121,2,0,1,85,83,77,79,1,0,0,50,1,0,0,51,1,0,0,52,1,0,0,53,1,0,0,54,1,0,0,55,3,0,1,115,94,71,87,60,80,7,0,1,164,91,133,81,167,79,114,94,3,116,41,110,166,94,12,0,0,73,46,68,46,73,110,108,101,116,32,68,66,1,0,1,3,33,3,0,0,78,97,78,7,0,1,164,91,133,81,167,79,127,110,3,116,41,110,166,94,12,0,0,73,46,68,46,73,110,108,101,116,32,87,66,7,0,1,164,91,22,89,167,79,114,94,3,116,41,110,166,94,12,0,0,79,46,68,46,73,110,108,101,116,32,68,66,7,0,1,164,91,22,89,167,79,127,110,3,116,41,110,166,94,12,0,0,79,46,68,46,73,110,108,101,116,32,87,66,11,0,1,164,91,133,81,167,79,114,94,3,116,41,110,166,94,95,0,147,143,250,81,207,145,19,0,0,73,46,68,46,73,110,108,101,116,32,68,66,32,79,117,116,112,117,116,1,0,0,37,11,0,1,164,91,133,81,167,79,127,110,3,116,41,110,166,94,95,0,147,143,250,81,207,145,19,0,0,73,46,68,46,73,110,108,101,116,32,87,66,32,79,117,116,112,117,116,11,0,1,164,91,22,89,167,79,114,94,3,116,41,110,166,94,95,0,147,143,250,81,207,145,19,0,0,79,46,68,46,73,110,108,101,116,32,68,66,32,79,117,116,112,117,116,11,0,1,164,91,22,89,167,79,127,110,3,116,41,110,166,94,95,0,147,143,250,81,207,145,19,0,0,79,46,68,46,73,110,108,101,116,32,87,66,32,79,117,116,112,117,116,11,0,1,164,91,133,81,167,79,214,83,55,104,206,152,58,103,95,0,147,143,250,81,207,145,23,0,0,73,46,68,46,83,97,109,112,108,105,110,103,32,102,97,110,32,79,117,116,112,117,116,11,0,1,164,91,22,89,167,79,214,83,55,104,206,152,58,103,95,0,147,143,250,81,207,145,23,0,0,79,46,68,46,83,97,109,112,108,105,110,103,32,102,97,110,32,79,117,116,112,117,116,6,0,1,251,124,223,126,139,83,155,82,49,0,50,0,17,0,0,83,121,115,116,101,109,32,112,114,101,115,115,117,114,101,49,50,3,0,0,77,80,97,8,0,1,164,91,133,81,167,79,49,0,237,112,53,117,118,80,49,0,7,0,0,73,78,49,95,84,67,49,8,0,1,164,91,133,81,167,79,49,0,237,112,53,117,118,80,50,0,7,0,0,73,78,49,95,84,67,50,8,0,1,164,91,133,81,167,79,50,0,237,112,53,117,118,80,49,0,7,0,0,73,78,50,95,84,67,49,8,0,1,164,91,133,81,167,79,50,0,237,112,53,117,118,80,50,0,7,0,0,73,78,50,95,84,67,50,8,0,1,164,91,133,81,167,79,51,0,237,112,53,117,118,80,49,0,7,0,0,73,78,51,95,84,67,49,8,0,1,164,91,133,81,167,79,51,0,237,112,53,117,118,80,50,0,7,0,0,73,78,51,95,84,67,50,8,0,1,164,91,133,81,167,79,52,0,237,112,53,117,118,80,49,0,7,0,0,73,78,52,95,84,67,49,8,0,1,164,91,133,81,167,79,52,0,237,112,53,117,118,80,50,0,7,0,0,73,78,52,95,84,67,50,8,0,1,164,91,133,81,167,79,53,0,237,112,53,117,118,80,49,0,7,0,0,73,78,53,95,84,67,49,8,0,1,164,91,133,81,167,79,53,0,237,112,53,117,118,80,50,0,7,0,0,73,78,53,95,84,67,50,8,0,1,164,91,133,81,167,79,54,0,237,112,53,117,118,80,49,0,7,0,0,73,78,54,95,84,67,49,8,0,1,164,91,133,81,167,79,54,0,237,112,53,117,118,80,50,0,7,0,0,73,78,54,95,84,67,50,8,0,1,164,91,22,89,167,79,49,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,49,95,84,67,49,8,0,1,164,91,22,89,167,79,49,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,49,95,84,67,50,8,0,1,164,91,22,89,167,79,50,0,237,112,53,117,118,80,49,0,9,0,0,79,85,84,50,95,84,67,49,49,8,0,1,164,91,22,89,167,79,50,0,237,112,53,117,118,80,50,0,9,0,0,79,85,84,50,95,84,67,49,50,8,0,1,164,91,22,89,167,79,51,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,51,95,84,67,49,8,0,1,164,91,22,89,167,79,51,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,51,95,84,67,50,8,0,1,164,91,22,89,167,79,52,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,52,95,84,67,49,8,0,1,164,91,22,89,167,79,52,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,52,95,84,67,50,8,0,1,164,91,22,89,167,79,53,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,53,95,84,67,49,8,0,1,164,91,22,89,167,79,53,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,53,95,84,67,50,8,0,1,164,91,22,89,167,79,54,0,237,112,53,117,118,80,49,0,8,0,0,79,85,84,54,95,84,67,49,8,0,1,164,91,22,89,167,79,54,0,237,112,53,117,118,80,50,0,8,0,0,79,85,84,54,95,84,67,50,6,0,1,75,109,213,139,0,78,11,78,13,84,87,91,9,0,0,79,85,84,54,95,84,67,53,48,6,0,1,2,95,56,94,176,115,97,140,207,99,240,143,255,0,154,0,8,0,244,8,0,0,12,0,0,0,71,9,0,0,95,0,0,0,160,9,0,0,184,0,0,0,252,9,0,0,20,1,0,0,98,10,0,0,122,1,0,0,227,10,0,0,251,1,0,0,86,11,0,0,110,2,0,0,174,11,0,0,198,2,0,0,244,11,0,0,12,3,0,0,50,12,0,0,74,3,0,0,177,12,0,0,201,3,0,0,88,13,0,0,112,4,0,0,250,13,0,0,18,5,0,0,110,14,0,0,134,5,0,0,226,14,0,0,250,5,0,0,86,15,0,0,110,6,0,0,208,15,0,0,232,6,0,0,72,16,0,0,96,7,0,0,188,16,0,0,212,7,0,0,140,8,16,0,140,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,9,8,16,0,0,6,16,0,23,25,205,7,201,192,0,0,6,3,0,0,11,2,24,0,0,0,0,0,0,0,0,0,61,0,0,0,161,18,0,0,101,46,0,0,11,69,0,0,13,0,2,0,1,0,12,0,2,0,100,0,15,0,2,0,1,0,17,0,2,0,0,0,16,0,8,0,252,169,241,210,77,98,80,63,95,0,2,0,1,0,42,0,2,0,0,0,43,0,2,0,0,0,130,0,2,0,1,0,37,2,4,0,0,0,255,0,129,0,2,0,193,4,20,0,3,0,0,0,1,21,0,3,0,0,0,1,131,0,2,0,0,0,132,0,2,0,0,0,38,0,8,0,0,0,0,0,0,0,232,63,39,0,8,0,0,0,0,0,0,0,232,63,40,0,8,0,0,0,0,0,0,0,240,63,41,0,8,0,0,0,0,0,0,0,240,63,161,0,34,0,9,0,100,0,1,0,1,0,1,0,2,0,44,1,44,1,0,0,0,0,0,0,224,63,0,0,0,0,0,0,224,63,1,0,156,8,38,0,156,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,85,0,2,0,8,0,0,2,14,0,0,0,0,0,61,0,0,0,0,0,16,0,0,0,8,2,16,0,0,0,0,0,16,0,28,2,0,0,0,0,64,1,15,0,8,2,16,0,1,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,2,0,0,0,16,0,28,2,0,0,0,0,64,1,15,0,8,2,16,0,3,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,4,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,5,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,6,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,7,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,8,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,9,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,10,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,11,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,12,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,13,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,14,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,15,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,16,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,17,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,18,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,19,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,20,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,21,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,22,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,23,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,24,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,25,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,26,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,27,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,28,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,29,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,30,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,31,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,253,0,10,0,0,0,0,0,47,0,0,0,0,0,253,0,10,0,0,0,1,0,57,0,0,0,0,0,253,0,10,0,0,0,2,0,57,0,0,0,0,0,253,0,10,0,0,0,3,0,57,0,0,0,0,0,253,0,10,0,0,0,4,0,57,0,0,0,0,0,253,0,10,0,0,0,5,0,57,0,0,0,0,0,253,0,10,0,0,0,6,0,57,0,0,0,0,0,253,0,10,0,0,0,7,0,57,0,0,0,0,0,253,0,10,0,0,0,8,0,57,0,0,0,0,0,253,0,10,0,0,0,9,0,57,0,0,0,0,0,253,0,10,0,0,0,10,0,57,0,0,0,0,0,253,0,10,0,0,0,11,0,57,0,0,0,0,0,253,0,10,0,0,0,12,0,57,0,0,0,0,0,253,0,10,0,0,0,13,0,57,0,0,0,0,0,253,0,10,0,0,0,14,0,57,0,0,0,0,0,253,0,10,0,0,0,15,0,49,0,0,0,0,0,253,0,10,0,1,0,0,0,58,0,1,0,0,0,253,0,10,0,1,0,1,0,59,0,1,0,0,0,253,0,10,0,1,0,2,0,59,0,2,0,0,0,253,0,10,0,1,0,3,0,59,0,2,0,0,0,253,0,10,0,1,0,4,0,59,0,3,0,0,0,253,0,10,0,1,0,5,0,59,0,3,0,0,0,253,0,10,0,1,0,6,0,59,0,2,0,0,0,253,0,10,0,1,0,7,0,59,0,2,0,0,0,253,0,10,0,1,0,8,0,59,0,4,0,0,0,253,0,10,0,1,0,9,0,59,0,5,0,0,0,253,0,10,0,1,0,10,0,59,0,6,0,0,0,253,0,10,0,1,0,11,0,59,0,2,0,0,0,253,0,10,0,1,0,12,0,59,0,2,0,0,0,253,0,10,0,1,0,13,0,59,0,2,0,0,0,253,0,10,0,1,0,14,0,59,0,2,0,0,0,253,0,10,0,1,0,15,0,60,0,2,0,0,0,253,0,10,0,2,0,0,0,58,0,7,0,0,0,253,0,10,0,2,0,1,0,59,0,7,0,0,0,253,0,10,0,2,0,2,0,61,0,8,0,0,0,253,0,10,0,2,0,3,0,61,0,8,0,0,0,253,0,10,0,2,0,4,0,61,0,8,0,0,0,253,0,10,0,2,0,5,0,61,0,8,0,0,0,253,0,10,0,2,0,6,0,61,0,8,0,0,0,253,0,10,0,2,0,7,0,61,0,8,0,0,0,253,0,10,0,2,0,8,0,61,0,8,0,0,0,253,0,10,0,2,0,9,0,61,0,8,0,0,0,253,0,10,0,2,0,10,0,61,0,8,0,0,0,253,0,10,0,2,0,11,0,61,0,8,0,0,0,253,0,10,0,2,0,12,0,61,0,8,0,0,0,253,0,10,0,2,0,13,0,61,0,8,0,0,0,253,0,10,0,2,0,14,0,61,0,8,0,0,0,253,0,10,0,2,0,15,0,52,0,8,0,0,0,253,0,10,0,3,0,0,0,58,0,9,0,0,0,253,0,10,0,3,0,1,0,59,0,9,0,0,0,253,0,10,0,3,0,2,0,59,0,2,0,0,0,253,0,10,0,3,0,3,0,59,0,2,0,0,0,253,0,10,0,3,0,4,0,59,0,2,0,0,0,253,0,10,0,3,0,5,0,59,0,2,0,0,0,253,0,10,0,3,0,6,0,59,0,2,0,0,0,253,0,10,0,3,0,7,0,59,0,2,0,0,0,253,0,10,0,3,0,8,0,59,0,2,0,0,0,253,0,10,0,3,0,9,0,59,0,2,0,0,0,253,0,10,0,3,0,10,0,59,0,2,0,0,0,253,0,10,0,3,0,11,0,59,0,2,0,0,0,253,0,10,0,3,0,12,0,59,0,2,0,0,0,253,0,10,0,3,0,13,0,59,0,2,0,0,0,253,0,10,0,3,0,14,0,59,0,2,0,0,0,253,0,10,0,3,0,15,0,60,0,2,0,0,0,253,0,10,0,4,0,0,0,58,0,10,0,0,0,253,0,10,0,4,0,1,0,59,0,11,0,0,0,253,0,10,0,4,0,2,0,59,0,12,0,0,0,253,0,10,0,4,0,3,0,59,0,12,0,0,0,253,0,10,0,4,0,4,0,59,0,12,0,0,0,253,0,10,0,4,0,5,0,59,0,12,0,0,0,253,0,10,0,4,0,6,0,59,0,12,0,0,0,253,0,10,0,4,0,7,0,59,0,12,0,0,0,253,0,10,0,4,0,8,0,59,0,21,0,0,0,253,0,10,0,4,0,9,0,59,0,21,0,0,0,253,0,10,0,4,0,10,0,59,0,2,0,0,0,253,0,10,0,4,0,11,0,59,0,2,0,0,0,253,0,10,0,4,0,12,0,59,0,2,0,0,0,253,0,10,0,4,0,13,0,59,0,2,0,0,0,253,0,10,0,4,0,14,0,59,0,2,0,0,0,253,0,10,0,4,0,15,0,60,0,2,0,0,0,253,0,10,0,5,0,0,0,58,0,10,0,0,0,253,0,10,0,5,0,1,0,59,0,13,0,0,0,253,0,10,0,5,0,2,0,59,0,14,0,0,0,253,0,10,0,5,0,3,0,59,0,14,0,0,0,253,0,10,0,5,0,4,0,59,0,14,0,0,0,253,0,10,0,5,0,5,0,59,0,14,0,0,0,253,0,10,0,5,0,6,0,59,0,14,0,0,0,253,0,10,0,5,0,7,0,59,0,14,0,0,0,253,0,10,0,5,0,8,0,59,0,22,0,0,0,253,0,10,0,5,0,9,0,59,0,22,0,0,0,253,0,10,0,5,0,10,0,59,0,23,0,0,0,253,0,10,0,5,0,11,0,59,0,23,0,0,0,253,0,10,0,5,0,12,0,59,0,23,0,0,0,253,0,10,0,5,0,13,0,59,0,23,0,0,0,253,0,10,0,5,0,14,0,59,0,23,0,0,0,253,0,10,0,5,0,15,0,60,0,23,0,0,0,253,0,10,0,6,0,0,0,58,0,10,0,0,0,253,0,10,0,6,0,1,0,59,0,15,0,0,0,253,0,10,0,6,0,2,0,59,0,2,0,0,0,253,0,10,0,6,0,3,0,59,0,2,0,0,0,253,0,10,0,6,0,4,0,59,0,2,0,0,0,253,0,10,0,6,0,5,0,59,0,2,0,0,0,253,0,10,0,6,0,6,0,59,0,2,0,0,0,253,0,10,0,6,0,7,0,59,0,2,0,0,0,253,0,10,0,6,0,8,0,59,0,24,0,0,0,253,0,10,0,6,0,9,0,59,0,24,0,0,0,253,0,10,0,6,0,10,0,59,0,2,0,0,0,253,0,10,0,6,0,11,0,59,0,2,0,0,0,253,0,10,0,6,0,12,0,59,0,2,0,0,0,253,0,10,0,6,0,13,0,59,0,2,0,0,0,253,0,10,0,6,0,14,0,59,0,2,0,0,0,253,0,10,0,6,0,15,0,60,0,2,0,0,0,253,0,10,0,7,0,0,0,58,0,10,0,0,0,253,0,10,0,7,0,1,0,59,0,16,0,0,0,253,0,10,0,7,0,2,0,59,0,2,0,0,0,253,0,10,0,7,0,3,0,59,0,2,0,0,0,253,0,10,0,7,0,4,0,59,0,2,0,0,0,253,0,10,0,7,0,5,0,59,0,2,0,0,0,253,0,10,0,7,0,6,0,59,0,2,0,0,0,253,0,10,0,7,0,7,0,59,0,2,0,0,0,253,0,10,0,7,0,8,0,59,0,25,0,0,0,253,0,10,0,7,0,9,0,59,0,25,0,0,0,253,0,10,0,7,0,10,0,59,0,2,0,0,0,253,0,10,0,7,0,11,0,59,0,2,0,0,0,253,0,10,0,7,0,12,0,59,0,2,0,0,0,253,0,10,0,7,0,13,0,59,0,2,0,0,0,253,0,10,0,7,0,14,0,59,0,2,0,0,0,253,0,10,0,7,0,15,0,60,0,2,0,0,0,253,0,10,0,8,0,0,0,58,0,10,0,0,0,253,0,10,0,8,0,1,0,59,0,17,0,0,0,253,0,10,0,8,0,2,0,59,0,18,0,0,0,253,0,10,0,8,0,3,0,59,0,18,0,0,0,253,0,10,0,8,0,4,0,59,0,18,0,0,0,253,0,10,0,8,0,5,0,59,0,18,0,0,0,253,0,10,0,8,0,6,0,59,0,18,0,0,0,253,0,10,0,8,0,7,0,59,0,18,0,0,0,253,0,10,0,8,0,8,0,59,0,26,0,0,0,253,0,10,0,8,0,9,0,59,0,26,0,0,0,253,0,10,0,8,0,10,0,59,0,27,0,0,0,253,0,10,0,8,0,11,0,59,0,27,0,0,0,253,0,10,0,8,0,12,0,59,0,27,0,0,0,253,0,10,0,8,0,13,0,59,0,27,0,0,0,253,0,10,0,8,0,14,0,59,0,27,0,0,0,253,0,10,0,8,0,15,0,60,0,27,0,0,0,253,0,10,0,9,0,0,0,58,0,10,0,0,0,253,0,10,0,9,0,1,0,59,0,19,0,0,0,253,0,10,0,9,0,2,0,59,0,2,0,0,0,253,0,10,0,9,0,3,0,59,0,2,0,0,0,253,0,10,0,9,0,4,0,59,0,2,0,0,0,253,0,10,0,9,0,5,0,59,0,2,0,0,0,253,0,10,0,9,0,6,0,59,0,2,0,0,0,253,0,10,0,9,0,7,0,59,0,2,0,0,0,253,0,10,0,9,0,8,0,59,0,28,0,0,0,253,0,10,0,9,0,9,0,59,0,28,0,0,0,253,0,10,0,9,0,10,0,59,0,2,0,0,0,253,0,10,0,9,0,11,0,59,0,2,0,0,0,253,0,10,0,9,0,12,0,59,0,2,0,0,0,253,0,10,0,9,0,13,0,59,0,2,0,0,0,253,0,10,0,9,0,14,0,59,0,2,0,0,0,253,0,10,0,9,0,15,0,60,0,2,0,0,0,253,0,10,0,10,0,0,0,58,0,10,0,0,0,253,0,10,0,10,0,1,0,59,0,20,0,0,0,253,0,10,0,10,0,2,0,59,0,2,0,0,0,253,0,10,0,10,0,3,0,59,0,2,0,0,0,253,0,10,0,10,0,4,0,59,0,2,0,0,0,253,0,10,0,10,0,5,0,59,0,2,0,0,0,253,0,10,0,10,0,6,0,59,0,2,0,0,0,253,0,10,0,10,0,7,0,59,0,2,0,0,0,253,0,10,0,10,0,8,0,59,0,29,0,0,0,253,0,10,0,10,0,9,0,59,0,29,0,0,0,253,0,10,0,10,0,10,0,59,0,2,0,0,0,253,0,10,0,10,0,11,0,59,0,2,0,0,0,253,0,10,0,10,0,12,0,59,0,2,0,0,0,253,0,10,0,10,0,13,0,59,0,2,0,0,0,253,0,10,0,10,0,14,0,59,0,2,0,0,0,253,0,10,0,10,0,15,0,60,0,2,0,0,0,253,0,10,0,11,0,0,0,58,0,10,0,0,0,253,0,10,0,11,0,1,0,59,0,30,0,0,0,253,0,10,0,11,0,2,0,59,0,2,0,0,0,253,0,10,0,11,0,3,0,59,0,2,0,0,0,253,0,10,0,11,0,4,0,59,0,2,0,0,0,253,0,10,0,11,0,5,0,59,0,2,0,0,0,253,0,10,0,11,0,6,0,59,0,2,0,0,0,253,0,10,0,11,0,7,0,59,0,2,0,0,0,253,0,10,0,11,0,8,0,59,0,2,0,0,0,253,0,10,0,11,0,9,0,59,0,2,0,0,0,253,0,10,0,11,0,10,0,59,0,2,0,0,0,253,0,10,0,11,0,11,0,59,0,2,0,0,0,253,0,10,0,11,0,12,0,59,0,2,0,0,0,253,0,10,0,11,0,13,0,59,0,2,0,0,0,253,0,10,0,11,0,14,0,59,0,2,0,0,0,253,0,10,0,11,0,15,0,60,0,2,0,0,0,253,0,10,0,12,0,0,0,58,0,31,0,0,0,253,0,10,0,12,0,1,0,59,0,32,0,0,0,253,0,10,0,12,0,2,0,59,0,33,0,0,0,253,0,10,0,12,0,3,0,59,0,33,0,0,0,253,0,10,0,12,0,4,0,59,0,33,0,0,0,253,0,10,0,12,0,5,0,59,0,33,0,0,0,253,0,10,0,12,0,6,0,59,0,33,0,0,0,253,0,10,0,12,0,7,0,59,0,33,0,0,0,253,0,10,0,12,0,8,0,59,0,34,0,0,0,253,0,10,0,12,0,9,0,59,0,34,0,0,0,253,0,10,0,12,0,10,0,59,0,35,0,0,0,253,0,10,0,12,0,11,0,59,0,35,0,0,0,253,0,10,0,12,0,12,0,59,0,35,0,0,0,253,0,10,0,12,0,13,0,59,0,35,0,0,0,253,0,10,0,12,0,14,0,59,0,35,0,0,0,253,0,10,0,12,0,15,0,60,0,35,0,0,0,253,0,10,0,13,0,0,0,58,0,31,0,0,0,253,0,10,0,13,0,1,0,59,0,36,0,0,0,253,0,10,0,13,0,2,0,59,0,37,0,0,0,253,0,10,0,13,0,3,0,59,0,37,0,0,0,253,0,10,0,13,0,4,0,59,0,37,0,0,0,253,0,10,0,13,0,5,0,59,0,37,0,0,0,253,0,10,0,13,0,6,0,59,0,37,0,0,0,253,0,10,0,13,0,7,0,59,0,37,0,0,0,253,0,10,0,13,0,8,0,59,0,37,0,0,0,253,0,10,0,13,0,9,0,59,0,37,0,0,0,253,0,10,0,13,0,10,0,59,0,37,0,0,0,253,0,10,0,13,0,11,0,59,0,37,0,0,0,253,0,10,0,13,0,12,0,59,0,37,0,0,0,253,0,10,0,13,0,13,0,59,0,37,0,0,0,253,0,10,0,13,0,14,0,59,0,37,0,0,0,253,0,10,0,13,0,15,0,60,0,37,0,0,0,253,0,10,0,14,0,0,0,58,0,38,0,0,0,253,0,10,0,14,0,1,0,59,0,39,0,0,0,253,0,10,0,14,0,2,0,59,0,43,0,0,0,253,0,10,0,14,0,3,0,59,0,43,0,0,0,253,0,10,0,14,0,4,0,59,0,43,0,0,0,253,0,10,0,14,0,5,0,59,0,43,0,0,0,253,0,10,0,14,0,6,0,59,0,43,0,0,0,253,0,10,0,14,0,7,0,59,0,41,0,0,0,253,0,10,0,14,0,8,0,59,0,41,0,0,0,253,0,10,0,14,0,9,0,59,0,41,0,0,0,253,0,10,0,14,0,10,0,59,0,45,0,0,0,253,0,10,0,14,0,11,0,59,0,45,0,0,0,253,0,10,0,14,0,12,0,59,0,45,0,0,0,253,0,10,0,14,0,13,0,59,0,45,0,0,0,253,0,10,0,14,0,14,0,59,0,45,0,0,0,253,0,10,0,14,0,15,0,60,0,45,0,0,0,253,0,10,0,15,0,0,0,58,0,38,0,0,0,253,0,10,0,15,0,1,0,59,0,40,0,0,0,253,0,10,0,15,0,2,0,59,0,44,0,0,0,253,0,10,0,15,0,3,0,59,0,44,0,0,0,253,0,10,0,15,0,4,0,59,0,44,0,0,0,253,0,10,0,15,0,5,0,59,0,44,0,0,0,253,0,10,0,15,0,6,0,59,0,44,0,0,0,253,0,10,0,15,0,7,0,59,0,42,0,0,0,253,0,10,0,15,0,8,0,59,0,42,0,0,0,253,0,10,0,15,0,9,0,59,0,42,0,0,0,253,0,10,0,15,0,10,0,59,0,46,0,0,0,253,0,10,0,15,0,11,0,59,0,46,0,0,0,253,0,10,0,15,0,12,0,59,0,46,0,0,0,253,0,10,0,15,0,13,0,59,0,46,0,0,0,253,0,10,0,15,0,14,0,59,0,46,0,0,0,253,0,10,0,15,0,15,0,60,0,46,0,0,0,253,0,10,0,16,0,0,0,58,0,38,0,0,0,253,0,10,0,16,0,1,0,59,0,47,0,0,0,253,0,10,0,16,0,2,0,59,0,49,0,0,0,253,0,10,0,16,0,3,0,59,0,49,0,0,0,253,0,10,0,16,0,4,0,59,0,49,0,0,0,253,0,10,0,16,0,5,0,59,0,49,0,0,0,253,0,10,0,16,0,6,0,59,0,49,0,0,0,253,0,10,0,16,0,7,0,59,0,48,0,0,0,253,0,10,0,16,0,8,0,59,0,48,0,0,0,253,0,10,0,16,0,9,0,59,0,48,0,0,0,253,0,10,0,16,0,10,0,59,0,50,0,0,0,253,0,10,0,16,0,11,0,59,0,50,0,0,0,253,0,10,0,16,0,12,0,59,0,50,0,0,0,253,0,10,0,16,0,13,0,59,0,50,0,0,0,253,0,10,0,16,0,14,0,59,0,50,0,0,0,253,0,10,0,16,0,15,0,60,0,50,0,0,0,253,0,10,0,17,0,0,0,58,0,51,0,0,0,253,0,10,0,17,0,1,0,59,0,39,0,0,0,190,0,16,0,17,0,2,0,59,0,59,0,59,0,59,0,59,0,6,0,253,0,10,0,17,0,7,0,59,0,41,0,0,0,253,0,10,0,17,0,8,0,59,0,41,0,0,0,253,0,10,0,17,0,9,0,59,0,41,0,0,0,190,0,18,0,17,0,10,0,59,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,18,0,0,0,58,0,51,0,0,0,253,0,10,0,18,0,1,0,59,0,40,0,0,0,190,0,16,0,18,0,2,0,59,0,59,0,59,0,59,0,59,0,6,0,253,0,10,0,18,0,7,0,59,0,42,0,0,0,253,0,10,0,18,0,8,0,59,0,42,0,0,0,253,0,10,0,18,0,9,0,59,0,42,0,0,0,190,0,18,0,18,0,10,0,59,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,19,0,0,0,58,0,52,0,0,0,253,0,10,0,19,0,1,0,59,0,53,0,0,0,253,0,10,0,19,0,2,0,59,0,2,0,0,0,253,0,10,0,19,0,3,0,59,0,2,0,0,0,253,0,10,0,19,0,4,0,59,0,2,0,0,0,253,0,10,0,19,0,5,0,59,0,2,0,0,0,253,0,10,0,19,0,6,0,59,0,2,0,0,0,253,0,10,0,19,0,7,0,59,0,55,0,0,0,253,0,10,0,19,0,8,0,59,0,56,0,0,0,253,0,10,0,19,0,9,0,59,0,56,0,0,0,253,0,10,0,19,0,10,0,59,0,2,0,0,0,253,0,10,0,19,0,11,0,59,0,2,0,0,0,253,0,10,0,19,0,12,0,59,0,2,0,0,0,253,0,10,0,19,0,13,0,59,0,2,0,0,0,253,0,10,0,19,0,14,0,59,0,2,0,0,0,253,0,10,0,19,0,15,0,60,0,2,0,0,0,253,0,10,0,20,0,0,0,58,0,52,0,0,0,253,0,10,0,20,0,1,0,59,0,54,0,0,0,253,0,10,0,20,0,2,0,59,0,2,0,0,0,253,0,10,0,20,0,3,0,59,0,2,0,0,0,253,0,10,0,20,0,4,0,59,0,2,0,0,0,253,0,10,0,20,0,5,0,59,0,2,0,0,0,253,0,10,0,20,0,6,0,59,0,2,0,0,0,253,0,10,0,20,0,7,0,59,0,55,0,0,0,253,0,10,0,20,0,8,0,59,0,57,0,0,0,253,0,10,0,20,0,9,0,59,0,57,0,0,0,253,0,10,0,20,0,10,0,59,0,2,0,0,0,253,0,10,0,20,0,11,0,59,0,2,0,0,0,253,0,10,0,20,0,12,0,59,0,2,0,0,0,253,0,10,0,20,0,13,0,59,0,2,0,0,0,253,0,10,0,20,0,14,0,59,0,2,0,0,0,253,0,10,0,20,0,15,0,60,0,2,0,0,0,253,0,10,0,21,0,0,0,58,0,58,0,0,0,253,0,10,0,21,0,1,0,59,0,58,0,0,0,253,0,10,0,21,0,2,0,59,0,2,0,0,0,253,0,10,0,21,0,3,0,59,0,2,0,0,0,253,0,10,0,21,0,4,0,59,0,2,0,0,0,253,0,10,0,21,0,5,0,59,0,2,0,0,0,253,0,10,0,21,0,6,0,59,0,2,0,0,0,253,0,10,0,21,0,7,0,59,0,2,0,0,0,253,0,10,0,21,0,8,0,59,0,2,0,0,0,253,0,10,0,21,0,9,0,59,0,2,0,0,0,253,0,10,0,21,0,10,0,59,0,2,0,0,0,253,0,10,0,21,0,11,0,59,0,2,0,0,0,253,0,10,0,21,0,12,0,59,0,2,0,0,0,253,0,10,0,21,0,13,0,59,0,2,0,0,0,253,0,10,0,21,0,14,0,59,0,2,0,0,0,253,0,10,0,21,0,15,0,60,0,2,0,0,0,253,0,10,0,22,0,0,0,58,0,59,0,0,0,253,0,10,0,22,0,1,0,59,0,60,0,0,0,253,0,10,0,22,0,2,0,59,0,61,0,0,0,253,0,10,0,22,0,3,0,59,0,12,0,0,0,253,0,10,0,22,0,4,0,59,0,62,0,0,0,253,0,10,0,22,0,5,0,59,0,63,0,0,0,253,0,10,0,22,0,6,0,59,0,64,0,0,0,253,0,10,0,22,0,7,0,59,0,65,0,0,0,253,0,10,0,22,0,8,0,59,0,66,0,0,0,253,0,10,0,22,0,9,0,59,0,67,0,0,0,253,0,10,0,22,0,10,0,59,0,68,0,0,0,190,0,16,0,22,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,23,0,0,0,58,0,69,0,0,0,253,0,10,0,23,0,1,0,59,0,70,0,0,0,253,0,10,0,23,0,2,0,59,0,71,0,0,0,253,0,10,0,23,0,3,0,59,0,72,0,0,0,253,0,10,0,23,0,4,0,59,0,72,0,0,0,253,0,10,0,23,0,5,0,59,0,72,0,0,0,253,0,10,0,23,0,6,0,59,0,72,0,0,0,253,0,10,0,23,0,7,0,59,0,72,0,0,0,253,0,10,0,23,0,8,0,59,0,72,0,0,0,253,0,10,0,23,0,9,0,59,0,72,0,0,0,253,0,10,0,23,0,10,0,59,0,72,0,0,0,190,0,16,0,23,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,24,0,0,0,58,0,73,0,0,0,253,0,10,0,24,0,1,0,59,0,74,0,0,0,253,0,10,0,24,0,2,0,59,0,71,0,0,0,253,0,10,0,24,0,3,0,59,0,72,0,0,0,253,0,10,0,24,0,4,0,59,0,72,0,0,0,253,0,10,0,24,0,5,0,59,0,72,0,0,0,253,0,10,0,24,0,6,0,59,0,72,0,0,0,253,0,10,0,24,0,7,0,59,0,72,0,0,0,253,0,10,0,24,0,8,0,59,0,72,0,0,0,253,0,10,0,24,0,9,0,59,0,72,0,0,0,253,0,10,0,24,0,10,0,59,0,72,0,0,0,190,0,16,0,24,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,25,0,0,0,58,0,75,0,0,0,253,0,10,0,25,0,1,0,59,0,76,0,0,0,253,0,10,0,25,0,2,0,59,0,71,0,0,0,253,0,10,0,25,0,3,0,59,0,72,0,0,0,253,0,10,0,25,0,4,0,59,0,72,0,0,0,253,0,10,0,25,0,5,0,59,0,72,0,0,0,253,0,10,0,25,0,6,0,59,0,72,0,0,0,253,0,10,0,25,0,7,0,59,0,72,0,0,0,253,0,10,0,25,0,8,0,59,0,72,0,0,0,253,0,10,0,25,0,9,0,59,0,72,0,0,0,253,0,10,0,25,0,10,0,59,0,72,0,0,0,190,0,16,0,25,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,26,0,0,0,58,0,77,0,0,0,253,0,10,0,26,0,1,0,59,0,78,0,0,0,253,0,10,0,26,0,2,0,59,0,71,0,0,0,253,0,10,0,26,0,3,0,59,0,72,0,0,0,253,0,10,0,26,0,4,0,59,0,72,0,0,0,253,0,10,0,26,0,5,0,59,0,72,0,0,0,253,0,10,0,26,0,6,0,59,0,72,0,0,0,253,0,10,0,26,0,7,0,59,0,72,0,0,0,253,0,10,0,26,0,8,0,59,0,72,0,0,0,253,0,10,0,26,0,9,0,59,0,72,0,0,0,253,0,10,0,26,0,10,0,59,0,72,0,0,0,190,0,16,0,26,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,27,0,0,0,58,0,79,0,0,0,253,0,10,0,27,0,1,0,59,0,80,0,0,0,253,0,10,0,27,0,2,0,59,0,81,0,0,0,253,0,10,0,27,0,3,0,59,0,72,0,0,0,253,0,10,0,27,0,4,0,59,0,72,0,0,0,253,0,10,0,27,0,5,0,59,0,72,0,0,0,253,0,10,0,27,0,6,0,59,0,72,0,0,0,253,0,10,0,27,0,7,0,59,0,72,0,0,0,253,0,10,0,27,0,8,0,59,0,72,0,0,0,253,0,10,0,27,0,9,0,59,0,72,0,0,0,253,0,10,0,27,0,10,0,59,0,72,0,0,0,190,0,16,0,27,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,28,0,0,0,58,0,82,0,0,0,253,0,10,0,28,0,1,0,59,0,83,0,0,0,253,0,10,0,28,0,2,0,59,0,81,0,0,0,253,0,10,0,28,0,3,0,59,0,72,0,0,0,253,0,10,0,28,0,4,0,59,0,72,0,0,0,253,0,10,0,28,0,5,0,59,0,72,0,0,0,253,0,10,0,28,0,6,0,59,0,72,0,0,0,253,0,10,0,28,0,7,0,59,0,72,0,0,0,253,0,10,0,28,0,8,0,59,0,72,0,0,0,253,0,10,0,28,0,9,0,59,0,72,0,0,0,253,0,10,0,28,0,10,0,59,0,72,0,0,0,190,0,16,0,28,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,29,0,0,0,58,0,84,0,0,0,253,0,10,0,29,0,1,0,59,0,85,0,0,0,253,0,10,0,29,0,2,0,59,0,81,0,0,0,253,0,10,0,29,0,3,0,59,0,72,0,0,0,253,0,10,0,29,0,4,0,59,0,72,0,0,0,253,0,10,0,29,0,5,0,59,0,72,0,0,0,253,0,10,0,29,0,6,0,59,0,72,0,0,0,253,0,10,0,29,0,7,0,59,0,72,0,0,0,253,0,10,0,29,0,8,0,59,0,72,0,0,0,253,0,10,0,29,0,9,0,59,0,72,0,0,0,253,0,10,0,29,0,10,0,59,0,72,0,0,0,190,0,16,0,29,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,30,0,0,0,58,0,86,0,0,0,253,0,10,0,30,0,1,0,59,0,87,0,0,0,253,0,10,0,30,0,2,0,59,0,81,0,0,0,253,0,10,0,30,0,3,0,59,0,72,0,0,0,253,0,10,0,30,0,4,0,59,0,72,0,0,0,253,0,10,0,30,0,5,0,59,0,72,0,0,0,253,0,10,0,30,0,6,0,59,0,72,0,0,0,253,0,10,0,30,0,7,0,59,0,72,0,0,0,253,0,10,0,30,0,8,0,59,0,72,0,0,0,253,0,10,0,30,0,9,0,59,0,72,0,0,0,253,0,10,0,30,0,10,0,59,0,72,0,0,0,190,0,16,0,30,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,31,0,0,0,58,0,88,0,0,0,253,0,10,0,31,0,1,0,59,0,89,0,0,0,253,0,10,0,31,0,2,0,59,0,81,0,0,0,253,0,10,0,31,0,3,0,59,0,72,0,0,0,253,0,10,0,31,0,4,0,59,0,72,0,0,0,253,0,10,0,31,0,5,0,59,0,72,0,0,0,253,0,10,0,31,0,6,0,59,0,72,0,0,0,253,0,10,0,31,0,7,0,59,0,72,0,0,0,253,0,10,0,31,0,8,0,59,0,72,0,0,0,253,0,10,0,31,0,9,0,59,0,72,0,0,0,253,0,10,0,31,0,10,0,59,0,72,0,0,0,190,0,16,0,31,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,215,0,68,0,172,27,0,0,108,2,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,112,0,112,0,224,0,224,0,224,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,8,2,16,0,32,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,33,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,34,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,35,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,36,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,37,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,38,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,39,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,40,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,41,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,42,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,43,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,44,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,45,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,46,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,47,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,48,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,49,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,50,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,51,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,52,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,53,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,54,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,55,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,56,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,57,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,58,0,0,0,16,0,255,0,0,0,0,0,0,1,15,0,8,2,16,0,59,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,8,2,16,0,60,0,0,0,16,0,14,1,0,0,0,0,64,1,15,0,253,0,10,0,32,0,0,0,58,0,90,0,0,0,253,0,10,0,32,0,1,0,59,0,91,0,0,0,253,0,10,0,32,0,2,0,59,0,81,0,0,0,253,0,10,0,32,0,3,0,59,0,72,0,0,0,253,0,10,0,32,0,4,0,59,0,72,0,0,0,253,0,10,0,32,0,5,0,59,0,72,0,0,0,253,0,10,0,32,0,6,0,59,0,72,0,0,0,253,0,10,0,32,0,7,0,59,0,72,0,0,0,253,0,10,0,32,0,8,0,59,0,72,0,0,0,253,0,10,0,32,0,9,0,59,0,72,0,0,0,253,0,10,0,32,0,10,0,59,0,72,0,0,0,190,0,16,0,32,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,33,0,0,0,58,0,92,0,0,0,253,0,10,0,33,0,1,0,59,0,93,0,0,0,253,0,10,0,33,0,2,0,59,0,94,0,0,0,253,0,10,0,33,0,3,0,59,0,72,0,0,0,253,0,10,0,33,0,4,0,59,0,72,0,0,0,253,0,10,0,33,0,5,0,59,0,72,0,0,0,253,0,10,0,33,0,6,0,59,0,72,0,0,0,253,0,10,0,33,0,7,0,59,0,72,0,0,0,253,0,10,0,33,0,8,0,59,0,72,0,0,0,253,0,10,0,33,0,9,0,59,0,72,0,0,0,253,0,10,0,33,0,10,0,59,0,72,0,0,0,190,0,16,0,33,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,34,0,0,0,58,0,95,0,0,0,253,0,10,0,34,0,1,0,59,0,96,0,0,0,253,0,10,0,34,0,2,0,59,0,71,0,0,0,253,0,10,0,34,0,3,0,59,0,72,0,0,0,253,0,10,0,34,0,4,0,59,0,72,0,0,0,253,0,10,0,34,0,5,0,59,0,72,0,0,0,253,0,10,0,34,0,6,0,59,0,72,0,0,0,253,0,10,0,34,0,7,0,59,0,72,0,0,0,253,0,10,0,34,0,8,0,59,0,72,0,0,0,253,0,10,0,34,0,9,0,59,0,72,0,0,0,253,0,10,0,34,0,10,0,59,0,72,0,0,0,190,0,16,0,34,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,35,0,0,0,58,0,97,0,0,0,253,0,10,0,35,0,1,0,59,0,98,0,0,0,253,0,10,0,35,0,2,0,59,0,71,0,0,0,253,0,10,0,35,0,3,0,59,0,72,0,0,0,253,0,10,0,35,0,4,0,59,0,72,0,0,0,253,0,10,0,35,0,5,0,59,0,72,0,0,0,253,0,10,0,35,0,6,0,59,0,72,0,0,0,253,0,10,0,35,0,7,0,59,0,72,0,0,0,253,0,10,0,35,0,8,0,59,0,72,0,0,0,253,0,10,0,35,0,9,0,59,0,72,0,0,0,253,0,10,0,35,0,10,0,59,0,72,0,0,0,190,0,16,0,35,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,36,0,0,0,58,0,99,0,0,0,253,0,10,0,36,0,1,0,59,0,100,0,0,0,253,0,10,0,36,0,2,0,59,0,71,0,0,0,253,0,10,0,36,0,3,0,59,0,72,0,0,0,253,0,10,0,36,0,4,0,59,0,72,0,0,0,253,0,10,0,36,0,5,0,59,0,72,0,0,0,253,0,10,0,36,0,6,0,59,0,72,0,0,0,253,0,10,0,36,0,7,0,59,0,72,0,0,0,253,0,10,0,36,0,8,0,59,0,72,0,0,0,253,0,10,0,36,0,9,0,59,0,72,0,0,0,253,0,10,0,36,0,10,0,59,0,72,0,0,0,190,0,16,0,36,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,37,0,0,0,58,0,101,0,0,0,253,0,10,0,37,0,1,0,59,0,102,0,0,0,253,0,10,0,37,0,2,0,59,0,71,0,0,0,253,0,10,0,37,0,3,0,59,0,72,0,0,0,253,0,10,0,37,0,4,0,59,0,72,0,0,0,253,0,10,0,37,0,5,0,59,0,72,0,0,0,253,0,10,0,37,0,6,0,59,0,72,0,0,0,253,0,10,0,37,0,7,0,59,0,72,0,0,0,253,0,10,0,37,0,8,0,59,0,72,0,0,0,253,0,10,0,37,0,9,0,59,0,72,0,0,0,253,0,10,0,37,0,10,0,59,0,72,0,0,0,190,0,16,0,37,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,38,0,0,0,58,0,103,0,0,0,253,0,10,0,38,0,1,0,59,0,104,0,0,0,253,0,10,0,38,0,2,0,59,0,71,0,0,0,253,0,10,0,38,0,3,0,59,0,72,0,0,0,253,0,10,0,38,0,4,0,59,0,72,0,0,0,253,0,10,0,38,0,5,0,59,0,72,0,0,0,253,0,10,0,38,0,6,0,59,0,72,0,0,0,253,0,10,0,38,0,7,0,59,0,72,0,0,0,253,0,10,0,38,0,8,0,59,0,72,0,0,0,253,0,10,0,38,0,9,0,59,0,72,0,0,0,253,0,10,0,38,0,10,0,59,0,72,0,0,0,190,0,16,0,38,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,39,0,0,0,58,0,105,0,0,0,253,0,10,0,39,0,1,0,59,0,106,0,0,0,253,0,10,0,39,0,2,0,59,0,71,0,0,0,253,0,10,0,39,0,3,0,59,0,72,0,0,0,253,0,10,0,39,0,4,0,59,0,72,0,0,0,253,0,10,0,39,0,5,0,59,0,72,0,0,0,253,0,10,0,39,0,6,0,59,0,72,0,0,0,253,0,10,0,39,0,7,0,59,0,72,0,0,0,253,0,10,0,39,0,8,0,59,0,72,0,0,0,253,0,10,0,39,0,9,0,59,0,72,0,0,0,253,0,10,0,39,0,10,0,59,0,72,0,0,0,190,0,16,0,39,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,40,0,0,0,58,0,107,0,0,0,253,0,10,0,40,0,1,0,59,0,108,0,0,0,253,0,10,0,40,0,2,0,59,0,71,0,0,0,253,0,10,0,40,0,3,0,59,0,72,0,0,0,253,0,10,0,40,0,4,0,59,0,72,0,0,0,253,0,10,0,40,0,5,0,59,0,72,0,0,0,253,0,10,0,40,0,6,0,59,0,72,0,0,0,253,0,10,0,40,0,7,0,59,0,72,0,0,0,253,0,10,0,40,0,8,0,59,0,72,0,0,0,253,0,10,0,40,0,9,0,59,0,72,0,0,0,253,0,10,0,40,0,10,0,59,0,72,0,0,0,190,0,16,0,40,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,41,0,0,0,58,0,109,0,0,0,253,0,10,0,41,0,1,0,59,0,110,0,0,0,253,0,10,0,41,0,2,0,59,0,71,0,0,0,253,0,10,0,41,0,3,0,59,0,72,0,0,0,253,0,10,0,41,0,4,0,59,0,72,0,0,0,253,0,10,0,41,0,5,0,59,0,72,0,0,0,253,0,10,0,41,0,6,0,59,0,72,0,0,0,253,0,10,0,41,0,7,0,59,0,72,0,0,0,253,0,10,0,41,0,8,0,59,0,72,0,0,0,253,0,10,0,41,0,9,0,59,0,72,0,0,0,253,0,10,0,41,0,10,0,59,0,72,0,0,0,190,0,16,0,41,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,42,0,0,0,58,0,111,0,0,0,253,0,10,0,42,0,1,0,59,0,112,0,0,0,253,0,10,0,42,0,2,0,59,0,71,0,0,0,253,0,10,0,42,0,3,0,59,0,72,0,0,0,253,0,10,0,42,0,4,0,59,0,72,0,0,0,253,0,10,0,42,0,5,0,59,0,72,0,0,0,253,0,10,0,42,0,6,0,59,0,72,0,0,0,253,0,10,0,42,0,7,0,59,0,72,0,0,0,253,0,10,0,42,0,8,0,59,0,72,0,0,0,253,0,10,0,42,0,9,0,59,0,72,0,0,0,253,0,10,0,42,0,10,0,59,0,72,0,0,0,190,0,16,0,42,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,43,0,0,0,58,0,113,0,0,0,253,0,10,0,43,0,1,0,59,0,114,0,0,0,253,0,10,0,43,0,2,0,59,0,71,0,0,0,253,0,10,0,43,0,3,0,59,0,72,0,0,0,253,0,10,0,43,0,4,0,59,0,72,0,0,0,253,0,10,0,43,0,5,0,59,0,72,0,0,0,253,0,10,0,43,0,6,0,59,0,72,0,0,0,253,0,10,0,43,0,7,0,59,0,72,0,0,0,253,0,10,0,43,0,8,0,59,0,72,0,0,0,253,0,10,0,43,0,9,0,59,0,72,0,0,0,253,0,10,0,43,0,10,0,59,0,72,0,0,0,190,0,16,0,43,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,44,0,0,0,58,0,115,0,0,0,253,0,10,0,44,0,1,0,59,0,116,0,0,0,253,0,10,0,44,0,2,0,59,0,71,0,0,0,253,0,10,0,44,0,3,0,59,0,72,0,0,0,253,0,10,0,44,0,4,0,59,0,72,0,0,0,253,0,10,0,44,0,5,0,59,0,72,0,0,0,253,0,10,0,44,0,6,0,59,0,72,0,0,0,253,0,10,0,44,0,7,0,59,0,72,0,0,0,253,0,10,0,44,0,8,0,59,0,72,0,0,0,253,0,10,0,44,0,9,0,59,0,72,0,0,0,253,0,10,0,44,0,10,0,59,0,72,0,0,0,190,0,16,0,44,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,45,0,0,0,58,0,117,0,0,0,253,0,10,0,45,0,1,0,59,0,118,0,0,0,253,0,10,0,45,0,2,0,59,0,71,0,0,0,253,0,10,0,45,0,3,0,59,0,72,0,0,0,253,0,10,0,45,0,4,0,59,0,72,0,0,0,253,0,10,0,45,0,5,0,59,0,72,0,0,0,253,0,10,0,45,0,6,0,59,0,72,0,0,0,253,0,10,0,45,0,7,0,59,0,72,0,0,0,253,0,10,0,45,0,8,0,59,0,72,0,0,0,253,0,10,0,45,0,9,0,59,0,72,0,0,0,253,0,10,0,45,0,10,0,59,0,72,0,0,0,190,0,16,0,45,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,46,0,0,0,58,0,119,0,0,0,253,0,10,0,46,0,1,0,59,0,120,0,0,0,253,0,10,0,46,0,2,0,59,0,71,0,0,0,253,0,10,0,46,0,3,0,59,0,72,0,0,0,253,0,10,0,46,0,4,0,59,0,72,0,0,0,253,0,10,0,46,0,5,0,59,0,72,0,0,0,253,0,10,0,46,0,6,0,59,0,72,0,0,0,253,0,10,0,46,0,7,0,59,0,72,0,0,0,253,0,10,0,46,0,8,0,59,0,72,0,0,0,253,0,10,0,46,0,9,0,59,0,72,0,0,0,253,0,10,0,46,0,10,0,59,0,72,0,0,0,190,0,16,0,46,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,47,0,0,0,58,0,121,0,0,0,253,0,10,0,47,0,1,0,59,0,122,0,0,0,253,0,10,0,47,0,2,0,59,0,71,0,0,0,253,0,10,0,47,0,3,0,59,0,72,0,0,0,253,0,10,0,47,0,4,0,59,0,72,0,0,0,253,0,10,0,47,0,5,0,59,0,72,0,0,0,253,0,10,0,47,0,6,0,59,0,72,0,0,0,253,0,10,0,47,0,7,0,59,0,72,0,0,0,253,0,10,0,47,0,8,0,59,0,72,0,0,0,253,0,10,0,47,0,9,0,59,0,72,0,0,0,253,0,10,0,47,0,10,0,59,0,72,0,0,0,190,0,16,0,47,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,48,0,0,0,58,0,123,0,0,0,253,0,10,0,48,0,1,0,59,0,124,0,0,0,253,0,10,0,48,0,2,0,59,0,71,0,0,0,253,0,10,0,48,0,3,0,59,0,72,0,0,0,253,0,10,0,48,0,4,0,59,0,72,0,0,0,253,0,10,0,48,0,5,0,59,0,72,0,0,0,253,0,10,0,48,0,6,0,59,0,72,0,0,0,253,0,10,0,48,0,7,0,59,0,72,0,0,0,253,0,10,0,48,0,8,0,59,0,72,0,0,0,253,0,10,0,48,0,9,0,59,0,72,0,0,0,253,0,10,0,48,0,10,0,59,0,72,0,0,0,190,0,16,0,48,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,49,0,0,0,58,0,125,0,0,0,253,0,10,0,49,0,1,0,59,0,126,0,0,0,253,0,10,0,49,0,2,0,59,0,71,0,0,0,253,0,10,0,49,0,3,0,59,0,72,0,0,0,253,0,10,0,49,0,4,0,59,0,72,0,0,0,253,0,10,0,49,0,5,0,59,0,72,0,0,0,253,0,10,0,49,0,6,0,59,0,72,0,0,0,253,0,10,0,49,0,7,0,59,0,72,0,0,0,253,0,10,0,49,0,8,0,59,0,72,0,0,0,253,0,10,0,49,0,9,0,59,0,72,0,0,0,253,0,10,0,49,0,10,0,59,0,72,0,0,0,190,0,16,0,49,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,50,0,0,0,58,0,127,0,0,0,253,0,10,0,50,0,1,0,59,0,128,0,0,0,253,0,10,0,50,0,2,0,59,0,71,0,0,0,253,0,10,0,50,0,3,0,59,0,72,0,0,0,253,0,10,0,50,0,4,0,59,0,72,0,0,0,253,0,10,0,50,0,5,0,59,0,72,0,0,0,253,0,10,0,50,0,6,0,59,0,72,0,0,0,253,0,10,0,50,0,7,0,59,0,72,0,0,0,253,0,10,0,50,0,8,0,59,0,72,0,0,0,253,0,10,0,50,0,9,0,59,0,72,0,0,0,253,0,10,0,50,0,10,0,59,0,72,0,0,0,190,0,16,0,50,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,51,0,0,0,58,0,129,0,0,0,253,0,10,0,51,0,1,0,59,0,130,0,0,0,253,0,10,0,51,0,2,0,59,0,71,0,0,0,253,0,10,0,51,0,3,0,59,0,72,0,0,0,253,0,10,0,51,0,4,0,59,0,72,0,0,0,253,0,10,0,51,0,5,0,59,0,72,0,0,0,253,0,10,0,51,0,6,0,59,0,72,0,0,0,253,0,10,0,51,0,7,0,59,0,72,0,0,0,253,0,10,0,51,0,8,0,59,0,72,0,0,0,253,0,10,0,51,0,9,0,59,0,72,0,0,0,253,0,10,0,51,0,10,0,59,0,72,0,0,0,190,0,16,0,51,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,52,0,0,0,58,0,131,0,0,0,253,0,10,0,52,0,1,0,59,0,132,0,0,0,253,0,10,0,52,0,2,0,59,0,71,0,0,0,253,0,10,0,52,0,3,0,59,0,72,0,0,0,253,0,10,0,52,0,4,0,59,0,72,0,0,0,253,0,10,0,52,0,5,0,59,0,72,0,0,0,253,0,10,0,52,0,6,0,59,0,72,0,0,0,253,0,10,0,52,0,7,0,59,0,72,0,0,0,253,0,10,0,52,0,8,0,59,0,72,0,0,0,253,0,10,0,52,0,9,0,59,0,72,0,0,0,253,0,10,0,52,0,10,0,59,0,72,0,0,0,190,0,16,0,52,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,53,0,0,0,58,0,133,0,0,0,253,0,10,0,53,0,1,0,59,0,134,0,0,0,253,0,10,0,53,0,2,0,59,0,71,0,0,0,253,0,10,0,53,0,3,0,59,0,72,0,0,0,253,0,10,0,53,0,4,0,59,0,72,0,0,0,253,0,10,0,53,0,5,0,59,0,72,0,0,0,253,0,10,0,53,0,6,0,59,0,72,0,0,0,253,0,10,0,53,0,7,0,59,0,72,0,0,0,253,0,10,0,53,0,8,0,59,0,72,0,0,0,253,0,10,0,53,0,9,0,59,0,72,0,0,0,253,0,10,0,53,0,10,0,59,0,72,0,0,0,190,0,16,0,53,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,54,0,0,0,58,0,135,0,0,0,253,0,10,0,54,0,1,0,59,0,136,0,0,0,253,0,10,0,54,0,2,0,59,0,71,0,0,0,253,0,10,0,54,0,3,0,59,0,72,0,0,0,253,0,10,0,54,0,4,0,59,0,72,0,0,0,253,0,10,0,54,0,5,0,59,0,72,0,0,0,253,0,10,0,54,0,6,0,59,0,72,0,0,0,253,0,10,0,54,0,7,0,59,0,72,0,0,0,253,0,10,0,54,0,8,0,59,0,72,0,0,0,253,0,10,0,54,0,9,0,59,0,72,0,0,0,253,0,10,0,54,0,10,0,59,0,72,0,0,0,190,0,16,0,54,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,55,0,0,0,58,0,137,0,0,0,253,0,10,0,55,0,1,0,59,0,138,0,0,0,253,0,10,0,55,0,2,0,59,0,71,0,0,0,253,0,10,0,55,0,3,0,59,0,72,0,0,0,253,0,10,0,55,0,4,0,59,0,72,0,0,0,253,0,10,0,55,0,5,0,59,0,72,0,0,0,253,0,10,0,55,0,6,0,59,0,72,0,0,0,253,0,10,0,55,0,7,0,59,0,72,0,0,0,253,0,10,0,55,0,8,0,59,0,72,0,0,0,253,0,10,0,55,0,9,0,59,0,72,0,0,0,253,0,10,0,55,0,10,0,59,0,72,0,0,0,190,0,16,0,55,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,56,0,0,0,58,0,139,0,0,0,253,0,10,0,56,0,1,0,59,0,140,0,0,0,253,0,10,0,56,0,2,0,59,0,71,0,0,0,253,0,10,0,56,0,3,0,59,0,72,0,0,0,253,0,10,0,56,0,4,0,59,0,72,0,0,0,253,0,10,0,56,0,5,0,59,0,72,0,0,0,253,0,10,0,56,0,6,0,59,0,72,0,0,0,253,0,10,0,56,0,7,0,59,0,72,0,0,0,253,0,10,0,56,0,8,0,59,0,72,0,0,0,253,0,10,0,56,0,9,0,59,0,72,0,0,0,253,0,10,0,56,0,10,0,59,0,72,0,0,0,190,0,16,0,56,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,57,0,0,0,58,0,141,0,0,0,253,0,10,0,57,0,1,0,59,0,142,0,0,0,253,0,10,0,57,0,2,0,59,0,71,0,0,0,253,0,10,0,57,0,3,0,59,0,72,0,0,0,253,0,10,0,57,0,4,0,59,0,72,0,0,0,253,0,10,0,57,0,5,0,59,0,72,0,0,0,253,0,10,0,57,0,6,0,59,0,72,0,0,0,253,0,10,0,57,0,7,0,59,0,72,0,0,0,253,0,10,0,57,0,8,0,59,0,72,0,0,0,253,0,10,0,57,0,9,0,59,0,72,0,0,0,253,0,10,0,57,0,10,0,59,0,72,0,0,0,190,0,16,0,57,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,58,0,0,0,58,0,143,0,0,0,253,0,10,0,58,0,1,0,59,0,144,0,0,0,253,0,10,0,58,0,2,0,59,0,71,0,0,0,253,0,10,0,58,0,3,0,59,0,72,0,0,0,253,0,10,0,58,0,4,0,59,0,72,0,0,0,253,0,10,0,58,0,5,0,59,0,72,0,0,0,253,0,10,0,58,0,6,0,59,0,72,0,0,0,253,0,10,0,58,0,7,0,59,0,72,0,0,0,253,0,10,0,58,0,8,0,59,0,72,0,0,0,253,0,10,0,58,0,9,0,59,0,72,0,0,0,253,0,10,0,58,0,10,0,59,0,72,0,0,0,190,0,16,0,58,0,11,0,59,0,59,0,59,0,59,0,60,0,15,0,253,0,10,0,59,0,0,0,58,0,145,0,0,0,253,0,10,0,59,0,1,0,59,0,145,0,0,0,253,0,10,0,59,0,2,0,59,0,2,0,0,0,253,0,10,0,59,0,3,0,59,0,2,0,0,0,253,0,10,0,59,0,4,0,59,0,2,0,0,0,253,0,10,0,59,0,5,0,59,0,2,0,0,0,253,0,10,0,59,0,6,0,59,0,2,0,0,0,253,0,10,0,59,0,7,0,59,0,2,0,0,0,253,0,10,0,59,0,8,0,59,0,2,0,0,0,253,0,10,0,59,0,9,0,59,0,2,0,0,0,253,0,10,0,59,0,10,0,59,0,2,0,0,0,253,0,10,0,59,0,11,0,59,0,2,0,0,0,253,0,10,0,59,0,12,0,59,0,2,0,0,0,253,0,10,0,59,0,13,0,59,0,2,0,0,0,253,0,10,0,59,0,14,0,59,0,2,0,0,0,253,0,10,0,59,0,15,0,60,0,2,0,0,0,253,0,10,0,60,0,0,0,54,0,30,0,0,0,253,0,10,0,60,0,1,0,62,0,30,0,0,0,253,0,10,0,60,0,2,0,62,0,2,0,0,0,253,0,10,0,60,0,3,0,62,0,2,0,0,0,253,0,10,0,60,0,4,0,62,0,2,0,0,0,253,0,10,0,60,0,5,0,62,0,2,0,0,0,253,0,10,0,60,0,6,0,62,0,2,0,0,0,253,0,10,0,60,0,7,0,62,0,2,0,0,0,253,0,10,0,60,0,8,0,62,0,2,0,0,0,253,0,10,0,60,0,9,0,62,0,2,0,0,0,253,0,10,0,60,0,10,0,62,0,2,0,0,0,253,0,10,0,60,0,11,0,62,0,2,0,0,0,253,0,10,0,60,0,12,0,62,0,2,0,0,0,253,0,10,0,60,0,13,0,62,0,2,0,0,0,253,0,10,0,60,0,14,0,62,0,2,0,0,0,253,0,10,0,60,0,15,0,56,0,2,0,0,0,215,0,62,0,94,22,0,0,48,2,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,174,0,224,0,62,2,18,0,182,6,0,0,0,0,64,0,0,0,60,0,100,0,0,0,0,0,171,0,34,0,32,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,229,0,10,2,65,0,0,0,0,0,0,0,15,0,1,0,1,0,0,0,1,0,1,0,1,0,2,0,3,0,1,0,1,0,4,0,5,0,1,0,1,0,6,0,7,0,1,0,1,0,11,0,15,0,2,0,2,0,0,0,1,0,2,0,2,0,2,0,15,0,3,0,3,0,0,0,1,0,3,0,3,0,2,0,15,0,4,0,11,0,0,0,0,0,4,0,4,0,2,0,7,0,5,0,5,0,2,0,7,0,6,0,6,0,2,0,7,0,7,0,7,0,2,0,7,0,8,0,8,0,2,0,7,0,9,0,9,0,2,0,7,0,10,0,10,0,2,0,7,0,4,0,4,0,8,0,9,0,4,0,4,0,10,0,15,0,5,0,5,0,8,0,9,0,5,0,5,0,10,0,15,0,6,0,6,0,8,0,9,0,6,0,6,0,10,0,15,0,7,0,7,0,8,0,9,0,7,0,7,0,10,0,15,0,8,0,8,0,8,0,9,0,8,0,8,0,10,0,15,0,9,0,9,0,8,0,9,0,9,0,9,0,10,0,15,0,10,0,10,0,8,0,9,0,10,0,10,0,10,0,15,0,11,0,11,0,2,0,15,0,12,0,13,0,0,0,0,0,12,0,12,0,2,0,7,0,12,0,12,0,8,0,9,0,12,0,12,0,10,0,15,0,13,0,13,0,2,0,15,0,14,0,16,0,0,0,0,0,14,0,14,0,7,0,9,0,15,0,15,0,7,0,9,0,14,0,14,0,2,0,6,0,15,0,15,0,2,0,6,0,14,0,14,0,10,0,15,0,15,0,15,0,10,0,15,0,16,0,16,0,7,0,9,0,16,0,16,0,2,0,6,0,16,0,16,0,10,0,15,0,17,0,18,0,0,0,0,0,17,0,17,0,7,0,9,0,18,0,18,0,7,0,9,0,19,0,20,0,0,0,0,0,19,0,19,0,2,0,6,0,20,0,20,0,2,0,6,0,19,0,20,0,7,0,7,0,19,0,19,0,8,0,9,0,19,0,19,0,10,0,15,0,20,0,20,0,8,0,9,0,20,0,20,0,10,0,15,0,21,0,21,0,0,0,1,0,21,0,21,0,2,0,15,0,59,0,59,0,0,0,1,0,59,0,59,0,2,0,15,0,60,0,60,0,0,0,1,0,60,0,60,0,2,0,15,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,0,111,0,111,0,116,0,32,0,69,0,110,0,116,0,114,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,0,5,1,255,255,255,255,255,255,255,255,1,0,0,0,32,8,2,0,0,0,0,0,192,0,0,0,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,87,0,111,0,114,0,107,0,98,0,111,0,111,0,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,2,1,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,155,71,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,254,255,255,255,254,255,255,255,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255]}";
        JSONObject jsonObject = JSONObject.parseObject(str);
        JSONArray reportInfos = jsonObject.getJSONArray("ReportInfo");
        if(reportInfos != null && reportInfos.size()>0){
            int size = reportInfos.size();
            byte[] buf = new byte[size];
            for (int i = 0; i < size; i++) {
                Byte aByte = reportInfos.getByte(i);
                buf[i] = aByte;
            }
            InputStream inputStream = new ByteArrayInputStream(buf);
            FileUtil.writeFromStream(inputStream,"d:/b.xlsx");
        }
    }

    public static void testJsonToBytes(){
        URL resource = Test.class.getClassLoader().getResource("resources");
        System.out.println(resource);
        List<String> strings = FileUtil.listFileNames(resource.getPath());
        for (String string : strings) {
            System.out.println(string);
        }
        String str = FileUtil.readString(new File(resource.getPath() + "/附件数据.txt"), "UTF-8");
        JSONObject jsonObject = JSONObject.parseObject(str);
        JSONArray reportInfos = jsonObject.getJSONArray("ReportInfo");
        if(reportInfos != null && reportInfos.size()>0){
            int size = reportInfos.size();
            byte[] buf = new byte[size];
            for (int i = 0; i < size; i++) {
                Byte aByte = reportInfos.getByte(i);
                buf[i] = aByte;
            }
            InputStream inputStream = new ByteArrayInputStream(buf);
            FileUtil.writeFromStream(inputStream,"d:/c.xlsx");
        }
    }
}
